/*
 * Copyright Codeplay Software Ltd.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use these files except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// DO NOT MODIFY BY HAND
// This file was automatically generated by generate_matmul_tests.py.
// Results calculated using Tensorflow v1.12.0.

#include <gtest/gtest.h>
#include <vector>

#include "test/matmul/fixture.h"
#include "test/types/kernel_data_types.h"
#include "test/types/to_gtest_types.h"

using DataTypeList = sycldnn::types::KernelDataTypes;
using GTestTypeList = sycldnn::types::ToGTestTypes<DataTypeList>::type;

template <typename DataType>
using MatmulBatch3Beta1FalseFalse = MatmulFixture<DataType, false, false>;
TYPED_TEST_SUITE(MatmulBatch3Beta1FalseFalse, GTestTypeList);
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK14xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      12846.,   12952.,   13058.,   13164.,   13270.,   13376.,   13482.,
      13588.,   13694.,   13800.,   13906.,   14012.,   14118.,   14224.,
      30892.,   31194.,   31496.,   31798.,   32100.,   32402.,   32704.,
      33006.,   33308.,   33610.,   33912.,   34214.,   34516.,   34818.,
      48938.,   49436.,   49934.,   50432.,   50930.,   51428.,   51926.,
      52424.,   52922.,   53420.,   53918.,   54416.,   54914.,   55412.,
      66984.,   67678.,   68372.,   69066.,   69760.,   70454.,   71148.,
      71842.,   72536.,   73230.,   73924.,   74618.,   75312.,   76006.,
      85030.,   85920.,   86810.,   87700.,   88590.,   89480.,   90370.,
      91260.,   92150.,   93040.,   93930.,   94820.,   95710.,   96600.,
      103076.,  104162.,  105248.,  106334.,  107420.,  108506.,  109592.,
      110678.,  111764.,  112850.,  113936.,  115022.,  116108.,  117194.,
      121122.,  122404.,  123686.,  124968.,  126250.,  127532.,  128814.,
      130096.,  131378.,  132660.,  133942.,  135224.,  136506.,  137788.,
      139168.,  140646.,  142124.,  143602.,  145080.,  146558.,  148036.,
      149514.,  150992.,  152470.,  153948.,  155426.,  156904.,  158382.,
      157214.,  158888.,  160562.,  162236.,  163910.,  165584.,  167258.,
      168932.,  170606.,  172280.,  173954.,  175628.,  177302.,  178976.,
      175260.,  177130.,  179000.,  180870.,  182740.,  184610.,  186480.,
      188350.,  190220.,  192090.,  193960.,  195830.,  197700.,  199570.,
      193306.,  195372.,  197438.,  199504.,  201570.,  203636.,  205702.,
      207768.,  209834.,  211900.,  213966.,  216032.,  218098.,  220164.,
      211352.,  213614.,  215876.,  218138.,  220400.,  222662.,  224924.,
      227186.,  229448.,  231710.,  233972.,  236234.,  238496.,  240758.,
      229398.,  231856.,  234314.,  236772.,  239230.,  241688.,  244146.,
      246604.,  249062.,  251520.,  253978.,  256436.,  258894.,  261352.,
      247444.,  250098.,  252752.,  255406.,  258060.,  260714.,  263368.,
      266022.,  268676.,  271330.,  273984.,  276638.,  279292.,  281946.,
      823894.,  826744.,  829594.,  832444.,  835294.,  838144.,  840994.,
      843844.,  846694.,  849544.,  852394.,  855244.,  858094.,  860944.,
      880356.,  883402.,  886448.,  889494.,  892540.,  895586.,  898632.,
      901678.,  904724.,  907770.,  910816.,  913862.,  916908.,  919954.,
      936818.,  940060.,  943302.,  946544.,  949786.,  953028.,  956270.,
      959512.,  962754.,  965996.,  969238.,  972480.,  975722.,  978964.,
      993280.,  996718.,  1000156., 1003594., 1007032., 1010470., 1013908.,
      1017346., 1020784., 1024222., 1027660., 1031098., 1034536., 1037974.,
      1049742., 1053376., 1057010., 1060644., 1064278., 1067912., 1071546.,
      1075180., 1078814., 1082448., 1086082., 1089716., 1093350., 1096984.,
      1106204., 1110034., 1113864., 1117694., 1121524., 1125354., 1129184.,
      1133014., 1136844., 1140674., 1144504., 1148334., 1152164., 1155994.,
      1162666., 1166692., 1170718., 1174744., 1178770., 1182796., 1186822.,
      1190848., 1194874., 1198900., 1202926., 1206952., 1210978., 1215004.,
      1219128., 1223350., 1227572., 1231794., 1236016., 1240238., 1244460.,
      1248682., 1252904., 1257126., 1261348., 1265570., 1269792., 1274014.,
      1275590., 1280008., 1284426., 1288844., 1293262., 1297680., 1302098.,
      1306516., 1310934., 1315352., 1319770., 1324188., 1328606., 1333024.,
      1332052., 1336666., 1341280., 1345894., 1350508., 1355122., 1359736.,
      1364350., 1368964., 1373578., 1378192., 1382806., 1387420., 1392034.,
      1388514., 1393324., 1398134., 1402944., 1407754., 1412564., 1417374.,
      1422184., 1426994., 1431804., 1436614., 1441424., 1446234., 1451044.,
      1444976., 1449982., 1454988., 1459994., 1465000., 1470006., 1475012.,
      1480018., 1485024., 1490030., 1495036., 1500042., 1505048., 1510054.,
      1501438., 1506640., 1511842., 1517044., 1522246., 1527448., 1532650.,
      1537852., 1543054., 1548256., 1553458., 1558660., 1563862., 1569064.,
      1557900., 1563298., 1568696., 1574094., 1579492., 1584890., 1590288.,
      1595686., 1601084., 1606482., 1611880., 1617278., 1622676., 1628074.,
      2710590., 2716184., 2721778., 2727372., 2732966., 2738560., 2744154.,
      2749748., 2755342., 2760936., 2766530., 2772124., 2777718., 2783312.,
      2805468., 2811258., 2817048., 2822838., 2828628., 2834418., 2840208.,
      2845998., 2851788., 2857578., 2863368., 2869158., 2874948., 2880738.,
      2900346., 2906332., 2912318., 2918304., 2924290., 2930276., 2936262.,
      2942248., 2948234., 2954220., 2960206., 2966192., 2972178., 2978164.,
      2995224., 3001406., 3007588., 3013770., 3019952., 3026134., 3032316.,
      3038498., 3044680., 3050862., 3057044., 3063226., 3069408., 3075590.,
      3090102., 3096480., 3102858., 3109236., 3115614., 3121992., 3128370.,
      3134748., 3141126., 3147504., 3153882., 3160260., 3166638., 3173016.,
      3184980., 3191554., 3198128., 3204702., 3211276., 3217850., 3224424.,
      3230998., 3237572., 3244146., 3250720., 3257294., 3263868., 3270442.,
      3279858., 3286628., 3293398., 3300168., 3306938., 3313708., 3320478.,
      3327248., 3334018., 3340788., 3347558., 3354328., 3361098., 3367868.,
      3374736., 3381702., 3388668., 3395634., 3402600., 3409566., 3416532.,
      3423498., 3430464., 3437430., 3444396., 3451362., 3458328., 3465294.,
      3469614., 3476776., 3483938., 3491100., 3498262., 3505424., 3512586.,
      3519748., 3526910., 3534072., 3541234., 3548396., 3555558., 3562720.,
      3564492., 3571850., 3579208., 3586566., 3593924., 3601282., 3608640.,
      3615998., 3623356., 3630714., 3638072., 3645430., 3652788., 3660146.,
      3659370., 3666924., 3674478., 3682032., 3689586., 3697140., 3704694.,
      3712248., 3719802., 3727356., 3734910., 3742464., 3750018., 3757572.,
      3754248., 3761998., 3769748., 3777498., 3785248., 3792998., 3800748.,
      3808498., 3816248., 3823998., 3831748., 3839498., 3847248., 3854998.,
      3849126., 3857072., 3865018., 3872964., 3880910., 3888856., 3896802.,
      3904748., 3912694., 3920640., 3928586., 3936532., 3944478., 3952424.,
      3944004., 3952146., 3960288., 3968430., 3976572., 3984714., 3992856.,
      4000998., 4009140., 4017282., 4025424., 4033566., 4041708., 4049850.};
  const int batches = 3;
  const int m = 14;
  const int k = 14;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK14xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      13756.,   13862.,   13968.,   14074.,   14180.,   14286.,   14392.,
      14498.,   14604.,   14710.,   14816.,   14922.,   15028.,   15134.,
      15240.,   33077.,   33379.,   33681.,   33983.,   34285.,   34587.,
      34889.,   35191.,   35493.,   35795.,   36097.,   36399.,   36701.,
      37003.,   37305.,   52398.,   52896.,   53394.,   53892.,   54390.,
      54888.,   55386.,   55884.,   56382.,   56880.,   57378.,   57876.,
      58374.,   58872.,   59370.,   71719.,   72413.,   73107.,   73801.,
      74495.,   75189.,   75883.,   76577.,   77271.,   77965.,   78659.,
      79353.,   80047.,   80741.,   81435.,   91040.,   91930.,   92820.,
      93710.,   94600.,   95490.,   96380.,   97270.,   98160.,   99050.,
      99940.,   100830.,  101720.,  102610.,  103500.,  110361.,  111447.,
      112533.,  113619.,  114705.,  115791.,  116877.,  117963.,  119049.,
      120135.,  121221.,  122307.,  123393.,  124479.,  125565.,  129682.,
      130964.,  132246.,  133528.,  134810.,  136092.,  137374.,  138656.,
      139938.,  141220.,  142502.,  143784.,  145066.,  146348.,  147630.,
      149003.,  150481.,  151959.,  153437.,  154915.,  156393.,  157871.,
      159349.,  160827.,  162305.,  163783.,  165261.,  166739.,  168217.,
      169695.,  168324.,  169998.,  171672.,  173346.,  175020.,  176694.,
      178368.,  180042.,  181716.,  183390.,  185064.,  186738.,  188412.,
      190086.,  191760.,  187645.,  189515.,  191385.,  193255.,  195125.,
      196995.,  198865.,  200735.,  202605.,  204475.,  206345.,  208215.,
      210085.,  211955.,  213825.,  206966.,  209032.,  211098.,  213164.,
      215230.,  217296.,  219362.,  221428.,  223494.,  225560.,  227626.,
      229692.,  231758.,  233824.,  235890.,  226287.,  228549.,  230811.,
      233073.,  235335.,  237597.,  239859.,  242121.,  244383.,  246645.,
      248907.,  251169.,  253431.,  255693.,  257955.,  245608.,  248066.,
      250524.,  252982.,  255440.,  257898.,  260356.,  262814.,  265272.,
      267730.,  270188.,  272646.,  275104.,  277562.,  280020.,  264929.,
      267583.,  270237.,  272891.,  275545.,  278199.,  280853.,  283507.,
      286161.,  288815.,  291469.,  294123.,  296777.,  299431.,  302085.,
      882540.,  885390.,  888240.,  891090.,  893940.,  896790.,  899640.,
      902490.,  905340.,  908190.,  911040.,  913890.,  916740.,  919590.,
      922440.,  943021.,  946067.,  949113.,  952159.,  955205.,  958251.,
      961297.,  964343.,  967389.,  970435.,  973481.,  976527.,  979573.,
      982619.,  985665.,  1003502., 1006744., 1009986., 1013228., 1016470.,
      1019712., 1022954., 1026196., 1029438., 1032680., 1035922., 1039164.,
      1042406., 1045648., 1048890., 1063983., 1067421., 1070859., 1074297.,
      1077735., 1081173., 1084611., 1088049., 1091487., 1094925., 1098363.,
      1101801., 1105239., 1108677., 1112115., 1124464., 1128098., 1131732.,
      1135366., 1139000., 1142634., 1146268., 1149902., 1153536., 1157170.,
      1160804., 1164438., 1168072., 1171706., 1175340., 1184945., 1188775.,
      1192605., 1196435., 1200265., 1204095., 1207925., 1211755., 1215585.,
      1219415., 1223245., 1227075., 1230905., 1234735., 1238565., 1245426.,
      1249452., 1253478., 1257504., 1261530., 1265556., 1269582., 1273608.,
      1277634., 1281660., 1285686., 1289712., 1293738., 1297764., 1301790.,
      1305907., 1310129., 1314351., 1318573., 1322795., 1327017., 1331239.,
      1335461., 1339683., 1343905., 1348127., 1352349., 1356571., 1360793.,
      1365015., 1366388., 1370806., 1375224., 1379642., 1384060., 1388478.,
      1392896., 1397314., 1401732., 1406150., 1410568., 1414986., 1419404.,
      1423822., 1428240., 1426869., 1431483., 1436097., 1440711., 1445325.,
      1449939., 1454553., 1459167., 1463781., 1468395., 1473009., 1477623.,
      1482237., 1486851., 1491465., 1487350., 1492160., 1496970., 1501780.,
      1506590., 1511400., 1516210., 1521020., 1525830., 1530640., 1535450.,
      1540260., 1545070., 1549880., 1554690., 1547831., 1552837., 1557843.,
      1562849., 1567855., 1572861., 1577867., 1582873., 1587879., 1592885.,
      1597891., 1602897., 1607903., 1612909., 1617915., 1608312., 1613514.,
      1618716., 1623918., 1629120., 1634322., 1639524., 1644726., 1649928.,
      1655130., 1660332., 1665534., 1670736., 1675938., 1681140., 1668793.,
      1674191., 1679589., 1684987., 1690385., 1695783., 1701181., 1706579.,
      1711977., 1717375., 1722773., 1728171., 1733569., 1738967., 1744365.,
      2903804., 2909398., 2914992., 2920586., 2926180., 2931774., 2937368.,
      2942962., 2948556., 2954150., 2959744., 2965338., 2970932., 2976526.,
      2982120., 3005445., 3011235., 3017025., 3022815., 3028605., 3034395.,
      3040185., 3045975., 3051765., 3057555., 3063345., 3069135., 3074925.,
      3080715., 3086505., 3107086., 3113072., 3119058., 3125044., 3131030.,
      3137016., 3143002., 3148988., 3154974., 3160960., 3166946., 3172932.,
      3178918., 3184904., 3190890., 3208727., 3214909., 3221091., 3227273.,
      3233455., 3239637., 3245819., 3252001., 3258183., 3264365., 3270547.,
      3276729., 3282911., 3289093., 3295275., 3310368., 3316746., 3323124.,
      3329502., 3335880., 3342258., 3348636., 3355014., 3361392., 3367770.,
      3374148., 3380526., 3386904., 3393282., 3399660., 3412009., 3418583.,
      3425157., 3431731., 3438305., 3444879., 3451453., 3458027., 3464601.,
      3471175., 3477749., 3484323., 3490897., 3497471., 3504045., 3513650.,
      3520420., 3527190., 3533960., 3540730., 3547500., 3554270., 3561040.,
      3567810., 3574580., 3581350., 3588120., 3594890., 3601660., 3608430.,
      3615291., 3622257., 3629223., 3636189., 3643155., 3650121., 3657087.,
      3664053., 3671019., 3677985., 3684951., 3691917., 3698883., 3705849.,
      3712815., 3716932., 3724094., 3731256., 3738418., 3745580., 3752742.,
      3759904., 3767066., 3774228., 3781390., 3788552., 3795714., 3802876.,
      3810038., 3817200., 3818573., 3825931., 3833289., 3840647., 3848005.,
      3855363., 3862721., 3870079., 3877437., 3884795., 3892153., 3899511.,
      3906869., 3914227., 3921585., 3920214., 3927768., 3935322., 3942876.,
      3950430., 3957984., 3965538., 3973092., 3980646., 3988200., 3995754.,
      4003308., 4010862., 4018416., 4025970., 4021855., 4029605., 4037355.,
      4045105., 4052855., 4060605., 4068355., 4076105., 4083855., 4091605.,
      4099355., 4107105., 4114855., 4122605., 4130355., 4123496., 4131442.,
      4139388., 4147334., 4155280., 4163226., 4171172., 4179118., 4187064.,
      4195010., 4202956., 4210902., 4218848., 4226794., 4234740., 4225137.,
      4233279., 4241421., 4249563., 4257705., 4265847., 4273989., 4282131.,
      4290273., 4298415., 4306557., 4314699., 4322841., 4330983., 4339125.};
  const int batches = 3;
  const int m = 14;
  const int k = 14;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK14xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      14666.,   14772.,   14878.,   14984.,   15090.,   15196.,   15302.,
      15408.,   15514.,   15620.,   15726.,   15832.,   15938.,   16044.,
      16150.,   16256.,   35262.,   35564.,   35866.,   36168.,   36470.,
      36772.,   37074.,   37376.,   37678.,   37980.,   38282.,   38584.,
      38886.,   39188.,   39490.,   39792.,   55858.,   56356.,   56854.,
      57352.,   57850.,   58348.,   58846.,   59344.,   59842.,   60340.,
      60838.,   61336.,   61834.,   62332.,   62830.,   63328.,   76454.,
      77148.,   77842.,   78536.,   79230.,   79924.,   80618.,   81312.,
      82006.,   82700.,   83394.,   84088.,   84782.,   85476.,   86170.,
      86864.,   97050.,   97940.,   98830.,   99720.,   100610.,  101500.,
      102390.,  103280.,  104170.,  105060.,  105950.,  106840.,  107730.,
      108620.,  109510.,  110400.,  117646.,  118732.,  119818.,  120904.,
      121990.,  123076.,  124162.,  125248.,  126334.,  127420.,  128506.,
      129592.,  130678.,  131764.,  132850.,  133936.,  138242.,  139524.,
      140806.,  142088.,  143370.,  144652.,  145934.,  147216.,  148498.,
      149780.,  151062.,  152344.,  153626.,  154908.,  156190.,  157472.,
      158838.,  160316.,  161794.,  163272.,  164750.,  166228.,  167706.,
      169184.,  170662.,  172140.,  173618.,  175096.,  176574.,  178052.,
      179530.,  181008.,  179434.,  181108.,  182782.,  184456.,  186130.,
      187804.,  189478.,  191152.,  192826.,  194500.,  196174.,  197848.,
      199522.,  201196.,  202870.,  204544.,  200030.,  201900.,  203770.,
      205640.,  207510.,  209380.,  211250.,  213120.,  214990.,  216860.,
      218730.,  220600.,  222470.,  224340.,  226210.,  228080.,  220626.,
      222692.,  224758.,  226824.,  228890.,  230956.,  233022.,  235088.,
      237154.,  239220.,  241286.,  243352.,  245418.,  247484.,  249550.,
      251616.,  241222.,  243484.,  245746.,  248008.,  250270.,  252532.,
      254794.,  257056.,  259318.,  261580.,  263842.,  266104.,  268366.,
      270628.,  272890.,  275152.,  261818.,  264276.,  266734.,  269192.,
      271650.,  274108.,  276566.,  279024.,  281482.,  283940.,  286398.,
      288856.,  291314.,  293772.,  296230.,  298688.,  282414.,  285068.,
      287722.,  290376.,  293030.,  295684.,  298338.,  300992.,  303646.,
      306300.,  308954.,  311608.,  314262.,  316916.,  319570.,  322224.,
      941186.,  944036.,  946886.,  949736.,  952586.,  955436.,  958286.,
      961136.,  963986.,  966836.,  969686.,  972536.,  975386.,  978236.,
      981086.,  983936.,  1005686., 1008732., 1011778., 1014824., 1017870.,
      1020916., 1023962., 1027008., 1030054., 1033100., 1036146., 1039192.,
      1042238., 1045284., 1048330., 1051376., 1070186., 1073428., 1076670.,
      1079912., 1083154., 1086396., 1089638., 1092880., 1096122., 1099364.,
      1102606., 1105848., 1109090., 1112332., 1115574., 1118816., 1134686.,
      1138124., 1141562., 1145000., 1148438., 1151876., 1155314., 1158752.,
      1162190., 1165628., 1169066., 1172504., 1175942., 1179380., 1182818.,
      1186256., 1199186., 1202820., 1206454., 1210088., 1213722., 1217356.,
      1220990., 1224624., 1228258., 1231892., 1235526., 1239160., 1242794.,
      1246428., 1250062., 1253696., 1263686., 1267516., 1271346., 1275176.,
      1279006., 1282836., 1286666., 1290496., 1294326., 1298156., 1301986.,
      1305816., 1309646., 1313476., 1317306., 1321136., 1328186., 1332212.,
      1336238., 1340264., 1344290., 1348316., 1352342., 1356368., 1360394.,
      1364420., 1368446., 1372472., 1376498., 1380524., 1384550., 1388576.,
      1392686., 1396908., 1401130., 1405352., 1409574., 1413796., 1418018.,
      1422240., 1426462., 1430684., 1434906., 1439128., 1443350., 1447572.,
      1451794., 1456016., 1457186., 1461604., 1466022., 1470440., 1474858.,
      1479276., 1483694., 1488112., 1492530., 1496948., 1501366., 1505784.,
      1510202., 1514620., 1519038., 1523456., 1521686., 1526300., 1530914.,
      1535528., 1540142., 1544756., 1549370., 1553984., 1558598., 1563212.,
      1567826., 1572440., 1577054., 1581668., 1586282., 1590896., 1586186.,
      1590996., 1595806., 1600616., 1605426., 1610236., 1615046., 1619856.,
      1624666., 1629476., 1634286., 1639096., 1643906., 1648716., 1653526.,
      1658336., 1650686., 1655692., 1660698., 1665704., 1670710., 1675716.,
      1680722., 1685728., 1690734., 1695740., 1700746., 1705752., 1710758.,
      1715764., 1720770., 1725776., 1715186., 1720388., 1725590., 1730792.,
      1735994., 1741196., 1746398., 1751600., 1756802., 1762004., 1767206.,
      1772408., 1777610., 1782812., 1788014., 1793216., 1779686., 1785084.,
      1790482., 1795880., 1801278., 1806676., 1812074., 1817472., 1822870.,
      1828268., 1833666., 1839064., 1844462., 1849860., 1855258., 1860656.,
      3097018., 3102612., 3108206., 3113800., 3119394., 3124988., 3130582.,
      3136176., 3141770., 3147364., 3152958., 3158552., 3164146., 3169740.,
      3175334., 3180928., 3205422., 3211212., 3217002., 3222792., 3228582.,
      3234372., 3240162., 3245952., 3251742., 3257532., 3263322., 3269112.,
      3274902., 3280692., 3286482., 3292272., 3313826., 3319812., 3325798.,
      3331784., 3337770., 3343756., 3349742., 3355728., 3361714., 3367700.,
      3373686., 3379672., 3385658., 3391644., 3397630., 3403616., 3422230.,
      3428412., 3434594., 3440776., 3446958., 3453140., 3459322., 3465504.,
      3471686., 3477868., 3484050., 3490232., 3496414., 3502596., 3508778.,
      3514960., 3530634., 3537012., 3543390., 3549768., 3556146., 3562524.,
      3568902., 3575280., 3581658., 3588036., 3594414., 3600792., 3607170.,
      3613548., 3619926., 3626304., 3639038., 3645612., 3652186., 3658760.,
      3665334., 3671908., 3678482., 3685056., 3691630., 3698204., 3704778.,
      3711352., 3717926., 3724500., 3731074., 3737648., 3747442., 3754212.,
      3760982., 3767752., 3774522., 3781292., 3788062., 3794832., 3801602.,
      3808372., 3815142., 3821912., 3828682., 3835452., 3842222., 3848992.,
      3855846., 3862812., 3869778., 3876744., 3883710., 3890676., 3897642.,
      3904608., 3911574., 3918540., 3925506., 3932472., 3939438., 3946404.,
      3953370., 3960336., 3964250., 3971412., 3978574., 3985736., 3992898.,
      4000060., 4007222., 4014384., 4021546., 4028708., 4035870., 4043032.,
      4050194., 4057356., 4064518., 4071680., 4072654., 4080012., 4087370.,
      4094728., 4102086., 4109444., 4116802., 4124160., 4131518., 4138876.,
      4146234., 4153592., 4160950., 4168308., 4175666., 4183024., 4181058.,
      4188612., 4196166., 4203720., 4211274., 4218828., 4226382., 4233936.,
      4241490., 4249044., 4256598., 4264152., 4271706., 4279260., 4286814.,
      4294368., 4289462., 4297212., 4304962., 4312712., 4320462., 4328212.,
      4335962., 4343712., 4351462., 4359212., 4366962., 4374712., 4382462.,
      4390212., 4397962., 4405712., 4397866., 4405812., 4413758., 4421704.,
      4429650., 4437596., 4445542., 4453488., 4461434., 4469380., 4477326.,
      4485272., 4493218., 4501164., 4509110., 4517056., 4506270., 4514412.,
      4522554., 4530696., 4538838., 4546980., 4555122., 4563264., 4571406.,
      4579548., 4587690., 4595832., 4603974., 4612116., 4620258., 4628400.};
  const int batches = 3;
  const int m = 14;
  const int k = 14;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK15xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      15801.,   15922.,   16043.,   16164.,   16285.,   16406.,   16527.,
      16648.,   16769.,   16890.,   17011.,   17132.,   17253.,   17374.,
      38090.,   38436.,   38782.,   39128.,   39474.,   39820.,   40166.,
      40512.,   40858.,   41204.,   41550.,   41896.,   42242.,   42588.,
      60379.,   60950.,   61521.,   62092.,   62663.,   63234.,   63805.,
      64376.,   64947.,   65518.,   66089.,   66660.,   67231.,   67802.,
      82668.,   83464.,   84260.,   85056.,   85852.,   86648.,   87444.,
      88240.,   89036.,   89832.,   90628.,   91424.,   92220.,   93016.,
      104957.,  105978.,  106999.,  108020.,  109041.,  110062.,  111083.,
      112104.,  113125.,  114146.,  115167.,  116188.,  117209.,  118230.,
      127246.,  128492.,  129738.,  130984.,  132230.,  133476.,  134722.,
      135968.,  137214.,  138460.,  139706.,  140952.,  142198.,  143444.,
      149535.,  151006.,  152477.,  153948.,  155419.,  156890.,  158361.,
      159832.,  161303.,  162774.,  164245.,  165716.,  167187.,  168658.,
      171824.,  173520.,  175216.,  176912.,  178608.,  180304.,  182000.,
      183696.,  185392.,  187088.,  188784.,  190480.,  192176.,  193872.,
      194113.,  196034.,  197955.,  199876.,  201797.,  203718.,  205639.,
      207560.,  209481.,  211402.,  213323.,  215244.,  217165.,  219086.,
      216402.,  218548.,  220694.,  222840.,  224986.,  227132.,  229278.,
      231424.,  233570.,  235716.,  237862.,  240008.,  242154.,  244300.,
      238691.,  241062.,  243433.,  245804.,  248175.,  250546.,  252917.,
      255288.,  257659.,  260030.,  262401.,  264772.,  267143.,  269514.,
      260980.,  263576.,  266172.,  268768.,  271364.,  273960.,  276556.,
      279152.,  281748.,  284344.,  286940.,  289536.,  292132.,  294728.,
      283269.,  286090.,  288911.,  291732.,  294553.,  297374.,  300195.,
      303016.,  305837.,  308658.,  311479.,  314300.,  317121.,  319942.,
      305558.,  308604.,  311650.,  314696.,  317742.,  320788.,  323834.,
      326880.,  329926.,  332972.,  336018.,  339064.,  342110.,  345156.,
      1014547., 1017818., 1021089., 1024360., 1027631., 1030902., 1034173.,
      1037444., 1040715., 1043986., 1047257., 1050528., 1053799., 1057070.,
      1084086., 1087582., 1091078., 1094574., 1098070., 1101566., 1105062.,
      1108558., 1112054., 1115550., 1119046., 1122542., 1126038., 1129534.,
      1153625., 1157346., 1161067., 1164788., 1168509., 1172230., 1175951.,
      1179672., 1183393., 1187114., 1190835., 1194556., 1198277., 1201998.,
      1223164., 1227110., 1231056., 1235002., 1238948., 1242894., 1246840.,
      1250786., 1254732., 1258678., 1262624., 1266570., 1270516., 1274462.,
      1292703., 1296874., 1301045., 1305216., 1309387., 1313558., 1317729.,
      1321900., 1326071., 1330242., 1334413., 1338584., 1342755., 1346926.,
      1362242., 1366638., 1371034., 1375430., 1379826., 1384222., 1388618.,
      1393014., 1397410., 1401806., 1406202., 1410598., 1414994., 1419390.,
      1431781., 1436402., 1441023., 1445644., 1450265., 1454886., 1459507.,
      1464128., 1468749., 1473370., 1477991., 1482612., 1487233., 1491854.,
      1501320., 1506166., 1511012., 1515858., 1520704., 1525550., 1530396.,
      1535242., 1540088., 1544934., 1549780., 1554626., 1559472., 1564318.,
      1570859., 1575930., 1581001., 1586072., 1591143., 1596214., 1601285.,
      1606356., 1611427., 1616498., 1621569., 1626640., 1631711., 1636782.,
      1640398., 1645694., 1650990., 1656286., 1661582., 1666878., 1672174.,
      1677470., 1682766., 1688062., 1693358., 1698654., 1703950., 1709246.,
      1709937., 1715458., 1720979., 1726500., 1732021., 1737542., 1743063.,
      1748584., 1754105., 1759626., 1765147., 1770668., 1776189., 1781710.,
      1779476., 1785222., 1790968., 1796714., 1802460., 1808206., 1813952.,
      1819698., 1825444., 1831190., 1836936., 1842682., 1848428., 1854174.,
      1849015., 1854986., 1860957., 1866928., 1872899., 1878870., 1884841.,
      1890812., 1896783., 1902754., 1908725., 1914696., 1920667., 1926638.,
      1918554., 1924750., 1930946., 1937142., 1943338., 1949534., 1955730.,
      1961926., 1968122., 1974318., 1980514., 1986710., 1992906., 1999102.,
      3336293., 3342714., 3349135., 3355556., 3361977., 3368398., 3374819.,
      3381240., 3387661., 3394082., 3400503., 3406924., 3413345., 3419766.,
      3453082., 3459728., 3466374., 3473020., 3479666., 3486312., 3492958.,
      3499604., 3506250., 3512896., 3519542., 3526188., 3532834., 3539480.,
      3569871., 3576742., 3583613., 3590484., 3597355., 3604226., 3611097.,
      3617968., 3624839., 3631710., 3638581., 3645452., 3652323., 3659194.,
      3686660., 3693756., 3700852., 3707948., 3715044., 3722140., 3729236.,
      3736332., 3743428., 3750524., 3757620., 3764716., 3771812., 3778908.,
      3803449., 3810770., 3818091., 3825412., 3832733., 3840054., 3847375.,
      3854696., 3862017., 3869338., 3876659., 3883980., 3891301., 3898622.,
      3920238., 3927784., 3935330., 3942876., 3950422., 3957968., 3965514.,
      3973060., 3980606., 3988152., 3995698., 4003244., 4010790., 4018336.,
      4037027., 4044798., 4052569., 4060340., 4068111., 4075882., 4083653.,
      4091424., 4099195., 4106966., 4114737., 4122508., 4130279., 4138050.,
      4153816., 4161812., 4169808., 4177804., 4185800., 4193796., 4201792.,
      4209788., 4217784., 4225780., 4233776., 4241772., 4249768., 4257764.,
      4270605., 4278826., 4287047., 4295268., 4303489., 4311710., 4319931.,
      4328152., 4336373., 4344594., 4352815., 4361036., 4369257., 4377478.,
      4387394., 4395840., 4404286., 4412732., 4421178., 4429624., 4438070.,
      4446516., 4454962., 4463408., 4471854., 4480300., 4488746., 4497192.,
      4504183., 4512854., 4521525., 4530196., 4538867., 4547538., 4556209.,
      4564880., 4573551., 4582222., 4590893., 4599564., 4608235., 4616906.,
      4620972., 4629868., 4638764., 4647660., 4656556., 4665452., 4674348.,
      4683244., 4692140., 4701036., 4709932., 4718828., 4727724., 4736620.,
      4737761., 4746882., 4756003., 4765124., 4774245., 4783366., 4792487.,
      4801608., 4810729., 4819850., 4828971., 4838092., 4847213., 4856334.,
      4854550., 4863896., 4873242., 4882588., 4891934., 4901280., 4910626.,
      4919972., 4929318., 4938664., 4948010., 4957356., 4966702., 4976048.};
  const int batches = 3;
  const int m = 14;
  const int k = 15;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK15xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      16921.,   17042.,   17163.,   17284.,   17405.,   17526.,   17647.,
      17768.,   17889.,   18010.,   18131.,   18252.,   18373.,   18494.,
      18615.,   40786.,   41132.,   41478.,   41824.,   42170.,   42516.,
      42862.,   43208.,   43554.,   43900.,   44246.,   44592.,   44938.,
      45284.,   45630.,   64651.,   65222.,   65793.,   66364.,   66935.,
      67506.,   68077.,   68648.,   69219.,   69790.,   70361.,   70932.,
      71503.,   72074.,   72645.,   88516.,   89312.,   90108.,   90904.,
      91700.,   92496.,   93292.,   94088.,   94884.,   95680.,   96476.,
      97272.,   98068.,   98864.,   99660.,   112381.,  113402.,  114423.,
      115444.,  116465.,  117486.,  118507.,  119528.,  120549.,  121570.,
      122591.,  123612.,  124633.,  125654.,  126675.,  136246.,  137492.,
      138738.,  139984.,  141230.,  142476.,  143722.,  144968.,  146214.,
      147460.,  148706.,  149952.,  151198.,  152444.,  153690.,  160111.,
      161582.,  163053.,  164524.,  165995.,  167466.,  168937.,  170408.,
      171879.,  173350.,  174821.,  176292.,  177763.,  179234.,  180705.,
      183976.,  185672.,  187368.,  189064.,  190760.,  192456.,  194152.,
      195848.,  197544.,  199240.,  200936.,  202632.,  204328.,  206024.,
      207720.,  207841.,  209762.,  211683.,  213604.,  215525.,  217446.,
      219367.,  221288.,  223209.,  225130.,  227051.,  228972.,  230893.,
      232814.,  234735.,  231706.,  233852.,  235998.,  238144.,  240290.,
      242436.,  244582.,  246728.,  248874.,  251020.,  253166.,  255312.,
      257458.,  259604.,  261750.,  255571.,  257942.,  260313.,  262684.,
      265055.,  267426.,  269797.,  272168.,  274539.,  276910.,  279281.,
      281652.,  284023.,  286394.,  288765.,  279436.,  282032.,  284628.,
      287224.,  289820.,  292416.,  295012.,  297608.,  300204.,  302800.,
      305396.,  307992.,  310588.,  313184.,  315780.,  303301.,  306122.,
      308943.,  311764.,  314585.,  317406.,  320227.,  323048.,  325869.,
      328690.,  331511.,  334332.,  337153.,  339974.,  342795.,  327166.,
      330212.,  333258.,  336304.,  339350.,  342396.,  345442.,  348488.,
      351534.,  354580.,  357626.,  360672.,  363718.,  366764.,  369810.,
      1086781., 1090052., 1093323., 1096594., 1099865., 1103136., 1106407.,
      1109678., 1112949., 1116220., 1119491., 1122762., 1126033., 1129304.,
      1132575., 1161271., 1164767., 1168263., 1171759., 1175255., 1178751.,
      1182247., 1185743., 1189239., 1192735., 1196231., 1199727., 1203223.,
      1206719., 1210215., 1235761., 1239482., 1243203., 1246924., 1250645.,
      1254366., 1258087., 1261808., 1265529., 1269250., 1272971., 1276692.,
      1280413., 1284134., 1287855., 1310251., 1314197., 1318143., 1322089.,
      1326035., 1329981., 1333927., 1337873., 1341819., 1345765., 1349711.,
      1353657., 1357603., 1361549., 1365495., 1384741., 1388912., 1393083.,
      1397254., 1401425., 1405596., 1409767., 1413938., 1418109., 1422280.,
      1426451., 1430622., 1434793., 1438964., 1443135., 1459231., 1463627.,
      1468023., 1472419., 1476815., 1481211., 1485607., 1490003., 1494399.,
      1498795., 1503191., 1507587., 1511983., 1516379., 1520775., 1533721.,
      1538342., 1542963., 1547584., 1552205., 1556826., 1561447., 1566068.,
      1570689., 1575310., 1579931., 1584552., 1589173., 1593794., 1598415.,
      1608211., 1613057., 1617903., 1622749., 1627595., 1632441., 1637287.,
      1642133., 1646979., 1651825., 1656671., 1661517., 1666363., 1671209.,
      1676055., 1682701., 1687772., 1692843., 1697914., 1702985., 1708056.,
      1713127., 1718198., 1723269., 1728340., 1733411., 1738482., 1743553.,
      1748624., 1753695., 1757191., 1762487., 1767783., 1773079., 1778375.,
      1783671., 1788967., 1794263., 1799559., 1804855., 1810151., 1815447.,
      1820743., 1826039., 1831335., 1831681., 1837202., 1842723., 1848244.,
      1853765., 1859286., 1864807., 1870328., 1875849., 1881370., 1886891.,
      1892412., 1897933., 1903454., 1908975., 1906171., 1911917., 1917663.,
      1923409., 1929155., 1934901., 1940647., 1946393., 1952139., 1957885.,
      1963631., 1969377., 1975123., 1980869., 1986615., 1980661., 1986632.,
      1992603., 1998574., 2004545., 2010516., 2016487., 2022458., 2028429.,
      2034400., 2040371., 2046342., 2052313., 2058284., 2064255., 2055151.,
      2061347., 2067543., 2073739., 2079935., 2086131., 2092327., 2098523.,
      2104719., 2110915., 2117111., 2123307., 2129503., 2135699., 2141895.,
      3574141., 3580562., 3586983., 3593404., 3599825., 3606246., 3612667.,
      3619088., 3625509., 3631930., 3638351., 3644772., 3651193., 3657614.,
      3664035., 3699256., 3705902., 3712548., 3719194., 3725840., 3732486.,
      3739132., 3745778., 3752424., 3759070., 3765716., 3772362., 3779008.,
      3785654., 3792300., 3824371., 3831242., 3838113., 3844984., 3851855.,
      3858726., 3865597., 3872468., 3879339., 3886210., 3893081., 3899952.,
      3906823., 3913694., 3920565., 3949486., 3956582., 3963678., 3970774.,
      3977870., 3984966., 3992062., 3999158., 4006254., 4013350., 4020446.,
      4027542., 4034638., 4041734., 4048830., 4074601., 4081922., 4089243.,
      4096564., 4103885., 4111206., 4118527., 4125848., 4133169., 4140490.,
      4147811., 4155132., 4162453., 4169774., 4177095., 4199716., 4207262.,
      4214808., 4222354., 4229900., 4237446., 4244992., 4252538., 4260084.,
      4267630., 4275176., 4282722., 4290268., 4297814., 4305360., 4324831.,
      4332602., 4340373., 4348144., 4355915., 4363686., 4371457., 4379228.,
      4386999., 4394770., 4402541., 4410312., 4418083., 4425854., 4433625.,
      4449946., 4457942., 4465938., 4473934., 4481930., 4489926., 4497922.,
      4505918., 4513914., 4521910., 4529906., 4537902., 4545898., 4553894.,
      4561890., 4575061., 4583282., 4591503., 4599724., 4607945., 4616166.,
      4624387., 4632608., 4640829., 4649050., 4657271., 4665492., 4673713.,
      4681934., 4690155., 4700176., 4708622., 4717068., 4725514., 4733960.,
      4742406., 4750852., 4759298., 4767744., 4776190., 4784636., 4793082.,
      4801528., 4809974., 4818420., 4825291., 4833962., 4842633., 4851304.,
      4859975., 4868646., 4877317., 4885988., 4894659., 4903330., 4912001.,
      4920672., 4929343., 4938014., 4946685., 4950406., 4959302., 4968198.,
      4977094., 4985990., 4994886., 5003782., 5012678., 5021574., 5030470.,
      5039366., 5048262., 5057158., 5066054., 5074950., 5075521., 5084642.,
      5093763., 5102884., 5112005., 5121126., 5130247., 5139368., 5148489.,
      5157610., 5166731., 5175852., 5184973., 5194094., 5203215., 5200636.,
      5209982., 5219328., 5228674., 5238020., 5247366., 5256712., 5266058.,
      5275404., 5284750., 5294096., 5303442., 5312788., 5322134., 5331480.};
  const int batches = 3;
  const int m = 14;
  const int k = 15;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK15xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      18041.,   18162.,   18283.,   18404.,   18525.,   18646.,   18767.,
      18888.,   19009.,   19130.,   19251.,   19372.,   19493.,   19614.,
      19735.,   19856.,   43482.,   43828.,   44174.,   44520.,   44866.,
      45212.,   45558.,   45904.,   46250.,   46596.,   46942.,   47288.,
      47634.,   47980.,   48326.,   48672.,   68923.,   69494.,   70065.,
      70636.,   71207.,   71778.,   72349.,   72920.,   73491.,   74062.,
      74633.,   75204.,   75775.,   76346.,   76917.,   77488.,   94364.,
      95160.,   95956.,   96752.,   97548.,   98344.,   99140.,   99936.,
      100732.,  101528.,  102324.,  103120.,  103916.,  104712.,  105508.,
      106304.,  119805.,  120826.,  121847.,  122868.,  123889.,  124910.,
      125931.,  126952.,  127973.,  128994.,  130015.,  131036.,  132057.,
      133078.,  134099.,  135120.,  145246.,  146492.,  147738.,  148984.,
      150230.,  151476.,  152722.,  153968.,  155214.,  156460.,  157706.,
      158952.,  160198.,  161444.,  162690.,  163936.,  170687.,  172158.,
      173629.,  175100.,  176571.,  178042.,  179513.,  180984.,  182455.,
      183926.,  185397.,  186868.,  188339.,  189810.,  191281.,  192752.,
      196128.,  197824.,  199520.,  201216.,  202912.,  204608.,  206304.,
      208000.,  209696.,  211392.,  213088.,  214784.,  216480.,  218176.,
      219872.,  221568.,  221569.,  223490.,  225411.,  227332.,  229253.,
      231174.,  233095.,  235016.,  236937.,  238858.,  240779.,  242700.,
      244621.,  246542.,  248463.,  250384.,  247010.,  249156.,  251302.,
      253448.,  255594.,  257740.,  259886.,  262032.,  264178.,  266324.,
      268470.,  270616.,  272762.,  274908.,  277054.,  279200.,  272451.,
      274822.,  277193.,  279564.,  281935.,  284306.,  286677.,  289048.,
      291419.,  293790.,  296161.,  298532.,  300903.,  303274.,  305645.,
      308016.,  297892.,  300488.,  303084.,  305680.,  308276.,  310872.,
      313468.,  316064.,  318660.,  321256.,  323852.,  326448.,  329044.,
      331640.,  334236.,  336832.,  323333.,  326154.,  328975.,  331796.,
      334617.,  337438.,  340259.,  343080.,  345901.,  348722.,  351543.,
      354364.,  357185.,  360006.,  362827.,  365648.,  348774.,  351820.,
      354866.,  357912.,  360958.,  364004.,  367050.,  370096.,  373142.,
      376188.,  379234.,  382280.,  385326.,  388372.,  391418.,  394464.,
      1159015., 1162286., 1165557., 1168828., 1172099., 1175370., 1178641.,
      1181912., 1185183., 1188454., 1191725., 1194996., 1198267., 1201538.,
      1204809., 1208080., 1238456., 1241952., 1245448., 1248944., 1252440.,
      1255936., 1259432., 1262928., 1266424., 1269920., 1273416., 1276912.,
      1280408., 1283904., 1287400., 1290896., 1317897., 1321618., 1325339.,
      1329060., 1332781., 1336502., 1340223., 1343944., 1347665., 1351386.,
      1355107., 1358828., 1362549., 1366270., 1369991., 1373712., 1397338.,
      1401284., 1405230., 1409176., 1413122., 1417068., 1421014., 1424960.,
      1428906., 1432852., 1436798., 1440744., 1444690., 1448636., 1452582.,
      1456528., 1476779., 1480950., 1485121., 1489292., 1493463., 1497634.,
      1501805., 1505976., 1510147., 1514318., 1518489., 1522660., 1526831.,
      1531002., 1535173., 1539344., 1556220., 1560616., 1565012., 1569408.,
      1573804., 1578200., 1582596., 1586992., 1591388., 1595784., 1600180.,
      1604576., 1608972., 1613368., 1617764., 1622160., 1635661., 1640282.,
      1644903., 1649524., 1654145., 1658766., 1663387., 1668008., 1672629.,
      1677250., 1681871., 1686492., 1691113., 1695734., 1700355., 1704976.,
      1715102., 1719948., 1724794., 1729640., 1734486., 1739332., 1744178.,
      1749024., 1753870., 1758716., 1763562., 1768408., 1773254., 1778100.,
      1782946., 1787792., 1794543., 1799614., 1804685., 1809756., 1814827.,
      1819898., 1824969., 1830040., 1835111., 1840182., 1845253., 1850324.,
      1855395., 1860466., 1865537., 1870608., 1873984., 1879280., 1884576.,
      1889872., 1895168., 1900464., 1905760., 1911056., 1916352., 1921648.,
      1926944., 1932240., 1937536., 1942832., 1948128., 1953424., 1953425.,
      1958946., 1964467., 1969988., 1975509., 1981030., 1986551., 1992072.,
      1997593., 2003114., 2008635., 2014156., 2019677., 2025198., 2030719.,
      2036240., 2032866., 2038612., 2044358., 2050104., 2055850., 2061596.,
      2067342., 2073088., 2078834., 2084580., 2090326., 2096072., 2101818.,
      2107564., 2113310., 2119056., 2112307., 2118278., 2124249., 2130220.,
      2136191., 2142162., 2148133., 2154104., 2160075., 2166046., 2172017.,
      2177988., 2183959., 2189930., 2195901., 2201872., 2191748., 2197944.,
      2204140., 2210336., 2216532., 2222728., 2228924., 2235120., 2241316.,
      2247512., 2253708., 2259904., 2266100., 2272296., 2278492., 2284688.,
      3811989., 3818410., 3824831., 3831252., 3837673., 3844094., 3850515.,
      3856936., 3863357., 3869778., 3876199., 3882620., 3889041., 3895462.,
      3901883., 3908304., 3945430., 3952076., 3958722., 3965368., 3972014.,
      3978660., 3985306., 3991952., 3998598., 4005244., 4011890., 4018536.,
      4025182., 4031828., 4038474., 4045120., 4078871., 4085742., 4092613.,
      4099484., 4106355., 4113226., 4120097., 4126968., 4133839., 4140710.,
      4147581., 4154452., 4161323., 4168194., 4175065., 4181936., 4212312.,
      4219408., 4226504., 4233600., 4240696., 4247792., 4254888., 4261984.,
      4269080., 4276176., 4283272., 4290368., 4297464., 4304560., 4311656.,
      4318752., 4345753., 4353074., 4360395., 4367716., 4375037., 4382358.,
      4389679., 4397000., 4404321., 4411642., 4418963., 4426284., 4433605.,
      4440926., 4448247., 4455568., 4479194., 4486740., 4494286., 4501832.,
      4509378., 4516924., 4524470., 4532016., 4539562., 4547108., 4554654.,
      4562200., 4569746., 4577292., 4584838., 4592384., 4612635., 4620406.,
      4628177., 4635948., 4643719., 4651490., 4659261., 4667032., 4674803.,
      4682574., 4690345., 4698116., 4705887., 4713658., 4721429., 4729200.,
      4746076., 4754072., 4762068., 4770064., 4778060., 4786056., 4794052.,
      4802048., 4810044., 4818040., 4826036., 4834032., 4842028., 4850024.,
      4858020., 4866016., 4879517., 4887738., 4895959., 4904180., 4912401.,
      4920622., 4928843., 4937064., 4945285., 4953506., 4961727., 4969948.,
      4978169., 4986390., 4994611., 5002832., 5012958., 5021404., 5029850.,
      5038296., 5046742., 5055188., 5063634., 5072080., 5080526., 5088972.,
      5097418., 5105864., 5114310., 5122756., 5131202., 5139648., 5146399.,
      5155070., 5163741., 5172412., 5181083., 5189754., 5198425., 5207096.,
      5215767., 5224438., 5233109., 5241780., 5250451., 5259122., 5267793.,
      5276464., 5279840., 5288736., 5297632., 5306528., 5315424., 5324320.,
      5333216., 5342112., 5351008., 5359904., 5368800., 5377696., 5386592.,
      5395488., 5404384., 5413280., 5413281., 5422402., 5431523., 5440644.,
      5449765., 5458886., 5468007., 5477128., 5486249., 5495370., 5504491.,
      5513612., 5522733., 5531854., 5540975., 5550096., 5546722., 5556068.,
      5565414., 5574760., 5584106., 5593452., 5602798., 5612144., 5621490.,
      5630836., 5640182., 5649528., 5658874., 5668220., 5677566., 5686912.};
  const int batches = 3;
  const int m = 14;
  const int k = 15;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK16xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      19177.,   19314.,   19451.,   19588.,   19725.,   19862.,   19999.,
      20136.,   20273.,   20410.,   20547.,   20684.,   20821.,   20958.,
      46327.,   46720.,   47113.,   47506.,   47899.,   48292.,   48685.,
      49078.,   49471.,   49864.,   50257.,   50650.,   51043.,   51436.,
      73477.,   74126.,   74775.,   75424.,   76073.,   76722.,   77371.,
      78020.,   78669.,   79318.,   79967.,   80616.,   81265.,   81914.,
      100627.,  101532.,  102437.,  103342.,  104247.,  105152.,  106057.,
      106962.,  107867.,  108772.,  109677.,  110582.,  111487.,  112392.,
      127777.,  128938.,  130099.,  131260.,  132421.,  133582.,  134743.,
      135904.,  137065.,  138226.,  139387.,  140548.,  141709.,  142870.,
      154927.,  156344.,  157761.,  159178.,  160595.,  162012.,  163429.,
      164846.,  166263.,  167680.,  169097.,  170514.,  171931.,  173348.,
      182077.,  183750.,  185423.,  187096.,  188769.,  190442.,  192115.,
      193788.,  195461.,  197134.,  198807.,  200480.,  202153.,  203826.,
      209227.,  211156.,  213085.,  215014.,  216943.,  218872.,  220801.,
      222730.,  224659.,  226588.,  228517.,  230446.,  232375.,  234304.,
      236377.,  238562.,  240747.,  242932.,  245117.,  247302.,  249487.,
      251672.,  253857.,  256042.,  258227.,  260412.,  262597.,  264782.,
      263527.,  265968.,  268409.,  270850.,  273291.,  275732.,  278173.,
      280614.,  283055.,  285496.,  287937.,  290378.,  292819.,  295260.,
      290677.,  293374.,  296071.,  298768.,  301465.,  304162.,  306859.,
      309556.,  312253.,  314950.,  317647.,  320344.,  323041.,  325738.,
      317827.,  320780.,  323733.,  326686.,  329639.,  332592.,  335545.,
      338498.,  341451.,  344404.,  347357.,  350310.,  353263.,  356216.,
      344977.,  348186.,  351395.,  354604.,  357813.,  361022.,  364231.,
      367440.,  370649.,  373858.,  377067.,  380276.,  383485.,  386694.,
      372127.,  375592.,  379057.,  382522.,  385987.,  389452.,  392917.,
      396382.,  399847.,  403312.,  406777.,  410242.,  413707.,  417172.,
      1232557., 1236278., 1239999., 1243720., 1247441., 1251162., 1254883.,
      1258604., 1262325., 1266046., 1269767., 1273488., 1277209., 1280930.,
      1317051., 1321028., 1325005., 1328982., 1332959., 1336936., 1340913.,
      1344890., 1348867., 1352844., 1356821., 1360798., 1364775., 1368752.,
      1401545., 1405778., 1410011., 1414244., 1418477., 1422710., 1426943.,
      1431176., 1435409., 1439642., 1443875., 1448108., 1452341., 1456574.,
      1486039., 1490528., 1495017., 1499506., 1503995., 1508484., 1512973.,
      1517462., 1521951., 1526440., 1530929., 1535418., 1539907., 1544396.,
      1570533., 1575278., 1580023., 1584768., 1589513., 1594258., 1599003.,
      1603748., 1608493., 1613238., 1617983., 1622728., 1627473., 1632218.,
      1655027., 1660028., 1665029., 1670030., 1675031., 1680032., 1685033.,
      1690034., 1695035., 1700036., 1705037., 1710038., 1715039., 1720040.,
      1739521., 1744778., 1750035., 1755292., 1760549., 1765806., 1771063.,
      1776320., 1781577., 1786834., 1792091., 1797348., 1802605., 1807862.,
      1824015., 1829528., 1835041., 1840554., 1846067., 1851580., 1857093.,
      1862606., 1868119., 1873632., 1879145., 1884658., 1890171., 1895684.,
      1908509., 1914278., 1920047., 1925816., 1931585., 1937354., 1943123.,
      1948892., 1954661., 1960430., 1966199., 1971968., 1977737., 1983506.,
      1993003., 1999028., 2005053., 2011078., 2017103., 2023128., 2029153.,
      2035178., 2041203., 2047228., 2053253., 2059278., 2065303., 2071328.,
      2077497., 2083778., 2090059., 2096340., 2102621., 2108902., 2115183.,
      2121464., 2127745., 2134026., 2140307., 2146588., 2152869., 2159150.,
      2161991., 2168528., 2175065., 2181602., 2188139., 2194676., 2201213.,
      2207750., 2214287., 2220824., 2227361., 2233898., 2240435., 2246972.,
      2246485., 2253278., 2260071., 2266864., 2273657., 2280450., 2287243.,
      2294036., 2300829., 2307622., 2314415., 2321208., 2328001., 2334794.,
      2330979., 2338028., 2345077., 2352126., 2359175., 2366224., 2373273.,
      2380322., 2387371., 2394420., 2401469., 2408518., 2415567., 2422616.,
      4051569., 4058874., 4066179., 4073484., 4080789., 4088094., 4095399.,
      4102704., 4110009., 4117314., 4124619., 4131924., 4139229., 4146534.,
      4193407., 4200968., 4208529., 4216090., 4223651., 4231212., 4238773.,
      4246334., 4253895., 4261456., 4269017., 4276578., 4284139., 4291700.,
      4335245., 4343062., 4350879., 4358696., 4366513., 4374330., 4382147.,
      4389964., 4397781., 4405598., 4413415., 4421232., 4429049., 4436866.,
      4477083., 4485156., 4493229., 4501302., 4509375., 4517448., 4525521.,
      4533594., 4541667., 4549740., 4557813., 4565886., 4573959., 4582032.,
      4618921., 4627250., 4635579., 4643908., 4652237., 4660566., 4668895.,
      4677224., 4685553., 4693882., 4702211., 4710540., 4718869., 4727198.,
      4760759., 4769344., 4777929., 4786514., 4795099., 4803684., 4812269.,
      4820854., 4829439., 4838024., 4846609., 4855194., 4863779., 4872364.,
      4902597., 4911438., 4920279., 4929120., 4937961., 4946802., 4955643.,
      4964484., 4973325., 4982166., 4991007., 4999848., 5008689., 5017530.,
      5044435., 5053532., 5062629., 5071726., 5080823., 5089920., 5099017.,
      5108114., 5117211., 5126308., 5135405., 5144502., 5153599., 5162696.,
      5186273., 5195626., 5204979., 5214332., 5223685., 5233038., 5242391.,
      5251744., 5261097., 5270450., 5279803., 5289156., 5298509., 5307862.,
      5328111., 5337720., 5347329., 5356938., 5366547., 5376156., 5385765.,
      5395374., 5404983., 5414592., 5424201., 5433810., 5443419., 5453028.,
      5469949., 5479814., 5489679., 5499544., 5509409., 5519274., 5529139.,
      5539004., 5548869., 5558734., 5568599., 5578464., 5588329., 5598194.,
      5611787., 5621908., 5632029., 5642150., 5652271., 5662392., 5672513.,
      5682634., 5692755., 5702876., 5712997., 5723118., 5733239., 5743360.,
      5753625., 5764002., 5774379., 5784756., 5795133., 5805510., 5815887.,
      5826264., 5836641., 5847018., 5857395., 5867772., 5878149., 5888526.,
      5895463., 5906096., 5916729., 5927362., 5937995., 5948628., 5959261.,
      5969894., 5980527., 5991160., 6001793., 6012426., 6023059., 6033692.};
  const int batches = 3;
  const int m = 14;
  const int k = 16;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK16xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      20537.,   20674.,   20811.,   20948.,   21085.,   21222.,   21359.,
      21496.,   21633.,   21770.,   21907.,   22044.,   22181.,   22318.,
      22455.,   49608.,   50001.,   50394.,   50787.,   51180.,   51573.,
      51966.,   52359.,   52752.,   53145.,   53538.,   53931.,   54324.,
      54717.,   55110.,   78679.,   79328.,   79977.,   80626.,   81275.,
      81924.,   82573.,   83222.,   83871.,   84520.,   85169.,   85818.,
      86467.,   87116.,   87765.,   107750.,  108655.,  109560.,  110465.,
      111370.,  112275.,  113180.,  114085.,  114990.,  115895.,  116800.,
      117705.,  118610.,  119515.,  120420.,  136821.,  137982.,  139143.,
      140304.,  141465.,  142626.,  143787.,  144948.,  146109.,  147270.,
      148431.,  149592.,  150753.,  151914.,  153075.,  165892.,  167309.,
      168726.,  170143.,  171560.,  172977.,  174394.,  175811.,  177228.,
      178645.,  180062.,  181479.,  182896.,  184313.,  185730.,  194963.,
      196636.,  198309.,  199982.,  201655.,  203328.,  205001.,  206674.,
      208347.,  210020.,  211693.,  213366.,  215039.,  216712.,  218385.,
      224034.,  225963.,  227892.,  229821.,  231750.,  233679.,  235608.,
      237537.,  239466.,  241395.,  243324.,  245253.,  247182.,  249111.,
      251040.,  253105.,  255290.,  257475.,  259660.,  261845.,  264030.,
      266215.,  268400.,  270585.,  272770.,  274955.,  277140.,  279325.,
      281510.,  283695.,  282176.,  284617.,  287058.,  289499.,  291940.,
      294381.,  296822.,  299263.,  301704.,  304145.,  306586.,  309027.,
      311468.,  313909.,  316350.,  311247.,  313944.,  316641.,  319338.,
      322035.,  324732.,  327429.,  330126.,  332823.,  335520.,  338217.,
      340914.,  343611.,  346308.,  349005.,  340318.,  343271.,  346224.,
      349177.,  352130.,  355083.,  358036.,  360989.,  363942.,  366895.,
      369848.,  372801.,  375754.,  378707.,  381660.,  369389.,  372598.,
      375807.,  379016.,  382225.,  385434.,  388643.,  391852.,  395061.,
      398270.,  401479.,  404688.,  407897.,  411106.,  414315.,  398460.,
      401925.,  405390.,  408855.,  412320.,  415785.,  419250.,  422715.,
      426180.,  429645.,  433110.,  436575.,  440040.,  443505.,  446970.,
      1320331., 1324052., 1327773., 1331494., 1335215., 1338936., 1342657.,
      1346378., 1350099., 1353820., 1357541., 1361262., 1364983., 1368704.,
      1372425., 1410842., 1414819., 1418796., 1422773., 1426750., 1430727.,
      1434704., 1438681., 1442658., 1446635., 1450612., 1454589., 1458566.,
      1462543., 1466520., 1501353., 1505586., 1509819., 1514052., 1518285.,
      1522518., 1526751., 1530984., 1535217., 1539450., 1543683., 1547916.,
      1552149., 1556382., 1560615., 1591864., 1596353., 1600842., 1605331.,
      1609820., 1614309., 1618798., 1623287., 1627776., 1632265., 1636754.,
      1641243., 1645732., 1650221., 1654710., 1682375., 1687120., 1691865.,
      1696610., 1701355., 1706100., 1710845., 1715590., 1720335., 1725080.,
      1729825., 1734570., 1739315., 1744060., 1748805., 1772886., 1777887.,
      1782888., 1787889., 1792890., 1797891., 1802892., 1807893., 1812894.,
      1817895., 1822896., 1827897., 1832898., 1837899., 1842900., 1863397.,
      1868654., 1873911., 1879168., 1884425., 1889682., 1894939., 1900196.,
      1905453., 1910710., 1915967., 1921224., 1926481., 1931738., 1936995.,
      1953908., 1959421., 1964934., 1970447., 1975960., 1981473., 1986986.,
      1992499., 1998012., 2003525., 2009038., 2014551., 2020064., 2025577.,
      2031090., 2044419., 2050188., 2055957., 2061726., 2067495., 2073264.,
      2079033., 2084802., 2090571., 2096340., 2102109., 2107878., 2113647.,
      2119416., 2125185., 2134930., 2140955., 2146980., 2153005., 2159030.,
      2165055., 2171080., 2177105., 2183130., 2189155., 2195180., 2201205.,
      2207230., 2213255., 2219280., 2225441., 2231722., 2238003., 2244284.,
      2250565., 2256846., 2263127., 2269408., 2275689., 2281970., 2288251.,
      2294532., 2300813., 2307094., 2313375., 2315952., 2322489., 2329026.,
      2335563., 2342100., 2348637., 2355174., 2361711., 2368248., 2374785.,
      2381322., 2387859., 2394396., 2400933., 2407470., 2406463., 2413256.,
      2420049., 2426842., 2433635., 2440428., 2447221., 2454014., 2460807.,
      2467600., 2474393., 2481186., 2487979., 2494772., 2501565., 2496974.,
      2504023., 2511072., 2518121., 2525170., 2532219., 2539268., 2546317.,
      2553366., 2560415., 2567464., 2574513., 2581562., 2588611., 2595660.,
      4340445., 4347750., 4355055., 4362360., 4369665., 4376970., 4384275.,
      4391580., 4398885., 4406190., 4413495., 4420800., 4428105., 4435410.,
      4442715., 4492396., 4499957., 4507518., 4515079., 4522640., 4530201.,
      4537762., 4545323., 4552884., 4560445., 4568006., 4575567., 4583128.,
      4590689., 4598250., 4644347., 4652164., 4659981., 4667798., 4675615.,
      4683432., 4691249., 4699066., 4706883., 4714700., 4722517., 4730334.,
      4738151., 4745968., 4753785., 4796298., 4804371., 4812444., 4820517.,
      4828590., 4836663., 4844736., 4852809., 4860882., 4868955., 4877028.,
      4885101., 4893174., 4901247., 4909320., 4948249., 4956578., 4964907.,
      4973236., 4981565., 4989894., 4998223., 5006552., 5014881., 5023210.,
      5031539., 5039868., 5048197., 5056526., 5064855., 5100200., 5108785.,
      5117370., 5125955., 5134540., 5143125., 5151710., 5160295., 5168880.,
      5177465., 5186050., 5194635., 5203220., 5211805., 5220390., 5252151.,
      5260992., 5269833., 5278674., 5287515., 5296356., 5305197., 5314038.,
      5322879., 5331720., 5340561., 5349402., 5358243., 5367084., 5375925.,
      5404102., 5413199., 5422296., 5431393., 5440490., 5449587., 5458684.,
      5467781., 5476878., 5485975., 5495072., 5504169., 5513266., 5522363.,
      5531460., 5556053., 5565406., 5574759., 5584112., 5593465., 5602818.,
      5612171., 5621524., 5630877., 5640230., 5649583., 5658936., 5668289.,
      5677642., 5686995., 5708004., 5717613., 5727222., 5736831., 5746440.,
      5756049., 5765658., 5775267., 5784876., 5794485., 5804094., 5813703.,
      5823312., 5832921., 5842530., 5859955., 5869820., 5879685., 5889550.,
      5899415., 5909280., 5919145., 5929010., 5938875., 5948740., 5958605.,
      5968470., 5978335., 5988200., 5998065., 6011906., 6022027., 6032148.,
      6042269., 6052390., 6062511., 6072632., 6082753., 6092874., 6102995.,
      6113116., 6123237., 6133358., 6143479., 6153600., 6163857., 6174234.,
      6184611., 6194988., 6205365., 6215742., 6226119., 6236496., 6246873.,
      6257250., 6267627., 6278004., 6288381., 6298758., 6309135., 6315808.,
      6326441., 6337074., 6347707., 6358340., 6368973., 6379606., 6390239.,
      6400872., 6411505., 6422138., 6432771., 6443404., 6454037., 6464670.};
  const int batches = 3;
  const int m = 14;
  const int k = 16;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M14xK16xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      21897.,   22034.,   22171.,   22308.,   22445.,   22582.,   22719.,
      22856.,   22993.,   23130.,   23267.,   23404.,   23541.,   23678.,
      23815.,   23952.,   52889.,   53282.,   53675.,   54068.,   54461.,
      54854.,   55247.,   55640.,   56033.,   56426.,   56819.,   57212.,
      57605.,   57998.,   58391.,   58784.,   83881.,   84530.,   85179.,
      85828.,   86477.,   87126.,   87775.,   88424.,   89073.,   89722.,
      90371.,   91020.,   91669.,   92318.,   92967.,   93616.,   114873.,
      115778.,  116683.,  117588.,  118493.,  119398.,  120303.,  121208.,
      122113.,  123018.,  123923.,  124828.,  125733.,  126638.,  127543.,
      128448.,  145865.,  147026.,  148187.,  149348.,  150509.,  151670.,
      152831.,  153992.,  155153.,  156314.,  157475.,  158636.,  159797.,
      160958.,  162119.,  163280.,  176857.,  178274.,  179691.,  181108.,
      182525.,  183942.,  185359.,  186776.,  188193.,  189610.,  191027.,
      192444.,  193861.,  195278.,  196695.,  198112.,  207849.,  209522.,
      211195.,  212868.,  214541.,  216214.,  217887.,  219560.,  221233.,
      222906.,  224579.,  226252.,  227925.,  229598.,  231271.,  232944.,
      238841.,  240770.,  242699.,  244628.,  246557.,  248486.,  250415.,
      252344.,  254273.,  256202.,  258131.,  260060.,  261989.,  263918.,
      265847.,  267776.,  269833.,  272018.,  274203.,  276388.,  278573.,
      280758.,  282943.,  285128.,  287313.,  289498.,  291683.,  293868.,
      296053.,  298238.,  300423.,  302608.,  300825.,  303266.,  305707.,
      308148.,  310589.,  313030.,  315471.,  317912.,  320353.,  322794.,
      325235.,  327676.,  330117.,  332558.,  334999.,  337440.,  331817.,
      334514.,  337211.,  339908.,  342605.,  345302.,  347999.,  350696.,
      353393.,  356090.,  358787.,  361484.,  364181.,  366878.,  369575.,
      372272.,  362809.,  365762.,  368715.,  371668.,  374621.,  377574.,
      380527.,  383480.,  386433.,  389386.,  392339.,  395292.,  398245.,
      401198.,  404151.,  407104.,  393801.,  397010.,  400219.,  403428.,
      406637.,  409846.,  413055.,  416264.,  419473.,  422682.,  425891.,
      429100.,  432309.,  435518.,  438727.,  441936.,  424793.,  428258.,
      431723.,  435188.,  438653.,  442118.,  445583.,  449048.,  452513.,
      455978.,  459443.,  462908.,  466373.,  469838.,  473303.,  476768.,
      1408105., 1411826., 1415547., 1419268., 1422989., 1426710., 1430431.,
      1434152., 1437873., 1441594., 1445315., 1449036., 1452757., 1456478.,
      1460199., 1463920., 1504633., 1508610., 1512587., 1516564., 1520541.,
      1524518., 1528495., 1532472., 1536449., 1540426., 1544403., 1548380.,
      1552357., 1556334., 1560311., 1564288., 1601161., 1605394., 1609627.,
      1613860., 1618093., 1622326., 1626559., 1630792., 1635025., 1639258.,
      1643491., 1647724., 1651957., 1656190., 1660423., 1664656., 1697689.,
      1702178., 1706667., 1711156., 1715645., 1720134., 1724623., 1729112.,
      1733601., 1738090., 1742579., 1747068., 1751557., 1756046., 1760535.,
      1765024., 1794217., 1798962., 1803707., 1808452., 1813197., 1817942.,
      1822687., 1827432., 1832177., 1836922., 1841667., 1846412., 1851157.,
      1855902., 1860647., 1865392., 1890745., 1895746., 1900747., 1905748.,
      1910749., 1915750., 1920751., 1925752., 1930753., 1935754., 1940755.,
      1945756., 1950757., 1955758., 1960759., 1965760., 1987273., 1992530.,
      1997787., 2003044., 2008301., 2013558., 2018815., 2024072., 2029329.,
      2034586., 2039843., 2045100., 2050357., 2055614., 2060871., 2066128.,
      2083801., 2089314., 2094827., 2100340., 2105853., 2111366., 2116879.,
      2122392., 2127905., 2133418., 2138931., 2144444., 2149957., 2155470.,
      2160983., 2166496., 2180329., 2186098., 2191867., 2197636., 2203405.,
      2209174., 2214943., 2220712., 2226481., 2232250., 2238019., 2243788.,
      2249557., 2255326., 2261095., 2266864., 2276857., 2282882., 2288907.,
      2294932., 2300957., 2306982., 2313007., 2319032., 2325057., 2331082.,
      2337107., 2343132., 2349157., 2355182., 2361207., 2367232., 2373385.,
      2379666., 2385947., 2392228., 2398509., 2404790., 2411071., 2417352.,
      2423633., 2429914., 2436195., 2442476., 2448757., 2455038., 2461319.,
      2467600., 2469913., 2476450., 2482987., 2489524., 2496061., 2502598.,
      2509135., 2515672., 2522209., 2528746., 2535283., 2541820., 2548357.,
      2554894., 2561431., 2567968., 2566441., 2573234., 2580027., 2586820.,
      2593613., 2600406., 2607199., 2613992., 2620785., 2627578., 2634371.,
      2641164., 2647957., 2654750., 2661543., 2668336., 2662969., 2670018.,
      2677067., 2684116., 2691165., 2698214., 2705263., 2712312., 2719361.,
      2726410., 2733459., 2740508., 2747557., 2754606., 2761655., 2768704.,
      4629321., 4636626., 4643931., 4651236., 4658541., 4665846., 4673151.,
      4680456., 4687761., 4695066., 4702371., 4709676., 4716981., 4724286.,
      4731591., 4738896., 4791385., 4798946., 4806507., 4814068., 4821629.,
      4829190., 4836751., 4844312., 4851873., 4859434., 4866995., 4874556.,
      4882117., 4889678., 4897239., 4904800., 4953449., 4961266., 4969083.,
      4976900., 4984717., 4992534., 5000351., 5008168., 5015985., 5023802.,
      5031619., 5039436., 5047253., 5055070., 5062887., 5070704., 5115513.,
      5123586., 5131659., 5139732., 5147805., 5155878., 5163951., 5172024.,
      5180097., 5188170., 5196243., 5204316., 5212389., 5220462., 5228535.,
      5236608., 5277577., 5285906., 5294235., 5302564., 5310893., 5319222.,
      5327551., 5335880., 5344209., 5352538., 5360867., 5369196., 5377525.,
      5385854., 5394183., 5402512., 5439641., 5448226., 5456811., 5465396.,
      5473981., 5482566., 5491151., 5499736., 5508321., 5516906., 5525491.,
      5534076., 5542661., 5551246., 5559831., 5568416., 5601705., 5610546.,
      5619387., 5628228., 5637069., 5645910., 5654751., 5663592., 5672433.,
      5681274., 5690115., 5698956., 5707797., 5716638., 5725479., 5734320.,
      5763769., 5772866., 5781963., 5791060., 5800157., 5809254., 5818351.,
      5827448., 5836545., 5845642., 5854739., 5863836., 5872933., 5882030.,
      5891127., 5900224., 5925833., 5935186., 5944539., 5953892., 5963245.,
      5972598., 5981951., 5991304., 6000657., 6010010., 6019363., 6028716.,
      6038069., 6047422., 6056775., 6066128., 6087897., 6097506., 6107115.,
      6116724., 6126333., 6135942., 6145551., 6155160., 6164769., 6174378.,
      6183987., 6193596., 6203205., 6212814., 6222423., 6232032., 6249961.,
      6259826., 6269691., 6279556., 6289421., 6299286., 6309151., 6319016.,
      6328881., 6338746., 6348611., 6358476., 6368341., 6378206., 6388071.,
      6397936., 6412025., 6422146., 6432267., 6442388., 6452509., 6462630.,
      6472751., 6482872., 6492993., 6503114., 6513235., 6523356., 6533477.,
      6543598., 6553719., 6563840., 6574089., 6584466., 6594843., 6605220.,
      6615597., 6625974., 6636351., 6646728., 6657105., 6667482., 6677859.,
      6688236., 6698613., 6708990., 6719367., 6729744., 6736153., 6746786.,
      6757419., 6768052., 6778685., 6789318., 6799951., 6810584., 6821217.,
      6831850., 6842483., 6853116., 6863749., 6874382., 6885015., 6895648.};
  const int batches = 3;
  const int m = 14;
  const int k = 16;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK14xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      12846.,   12952.,   13058.,   13164.,   13270.,   13376.,   13482.,
      13588.,   13694.,   13800.,   13906.,   14012.,   14118.,   14224.,
      30892.,   31194.,   31496.,   31798.,   32100.,   32402.,   32704.,
      33006.,   33308.,   33610.,   33912.,   34214.,   34516.,   34818.,
      48938.,   49436.,   49934.,   50432.,   50930.,   51428.,   51926.,
      52424.,   52922.,   53420.,   53918.,   54416.,   54914.,   55412.,
      66984.,   67678.,   68372.,   69066.,   69760.,   70454.,   71148.,
      71842.,   72536.,   73230.,   73924.,   74618.,   75312.,   76006.,
      85030.,   85920.,   86810.,   87700.,   88590.,   89480.,   90370.,
      91260.,   92150.,   93040.,   93930.,   94820.,   95710.,   96600.,
      103076.,  104162.,  105248.,  106334.,  107420.,  108506.,  109592.,
      110678.,  111764.,  112850.,  113936.,  115022.,  116108.,  117194.,
      121122.,  122404.,  123686.,  124968.,  126250.,  127532.,  128814.,
      130096.,  131378.,  132660.,  133942.,  135224.,  136506.,  137788.,
      139168.,  140646.,  142124.,  143602.,  145080.,  146558.,  148036.,
      149514.,  150992.,  152470.,  153948.,  155426.,  156904.,  158382.,
      157214.,  158888.,  160562.,  162236.,  163910.,  165584.,  167258.,
      168932.,  170606.,  172280.,  173954.,  175628.,  177302.,  178976.,
      175260.,  177130.,  179000.,  180870.,  182740.,  184610.,  186480.,
      188350.,  190220.,  192090.,  193960.,  195830.,  197700.,  199570.,
      193306.,  195372.,  197438.,  199504.,  201570.,  203636.,  205702.,
      207768.,  209834.,  211900.,  213966.,  216032.,  218098.,  220164.,
      211352.,  213614.,  215876.,  218138.,  220400.,  222662.,  224924.,
      227186.,  229448.,  231710.,  233972.,  236234.,  238496.,  240758.,
      229398.,  231856.,  234314.,  236772.,  239230.,  241688.,  244146.,
      246604.,  249062.,  251520.,  253978.,  256436.,  258894.,  261352.,
      247444.,  250098.,  252752.,  255406.,  258060.,  260714.,  263368.,
      266022.,  268676.,  271330.,  273984.,  276638.,  279292.,  281946.,
      265490.,  268340.,  271190.,  274040.,  276890.,  279740.,  282590.,
      285440.,  288290.,  291140.,  293990.,  296840.,  299690.,  302540.,
      880356.,  883402.,  886448.,  889494.,  892540.,  895586.,  898632.,
      901678.,  904724.,  907770.,  910816.,  913862.,  916908.,  919954.,
      936818.,  940060.,  943302.,  946544.,  949786.,  953028.,  956270.,
      959512.,  962754.,  965996.,  969238.,  972480.,  975722.,  978964.,
      993280.,  996718.,  1000156., 1003594., 1007032., 1010470., 1013908.,
      1017346., 1020784., 1024222., 1027660., 1031098., 1034536., 1037974.,
      1049742., 1053376., 1057010., 1060644., 1064278., 1067912., 1071546.,
      1075180., 1078814., 1082448., 1086082., 1089716., 1093350., 1096984.,
      1106204., 1110034., 1113864., 1117694., 1121524., 1125354., 1129184.,
      1133014., 1136844., 1140674., 1144504., 1148334., 1152164., 1155994.,
      1162666., 1166692., 1170718., 1174744., 1178770., 1182796., 1186822.,
      1190848., 1194874., 1198900., 1202926., 1206952., 1210978., 1215004.,
      1219128., 1223350., 1227572., 1231794., 1236016., 1240238., 1244460.,
      1248682., 1252904., 1257126., 1261348., 1265570., 1269792., 1274014.,
      1275590., 1280008., 1284426., 1288844., 1293262., 1297680., 1302098.,
      1306516., 1310934., 1315352., 1319770., 1324188., 1328606., 1333024.,
      1332052., 1336666., 1341280., 1345894., 1350508., 1355122., 1359736.,
      1364350., 1368964., 1373578., 1378192., 1382806., 1387420., 1392034.,
      1388514., 1393324., 1398134., 1402944., 1407754., 1412564., 1417374.,
      1422184., 1426994., 1431804., 1436614., 1441424., 1446234., 1451044.,
      1444976., 1449982., 1454988., 1459994., 1465000., 1470006., 1475012.,
      1480018., 1485024., 1490030., 1495036., 1500042., 1505048., 1510054.,
      1501438., 1506640., 1511842., 1517044., 1522246., 1527448., 1532650.,
      1537852., 1543054., 1548256., 1553458., 1558660., 1563862., 1569064.,
      1557900., 1563298., 1568696., 1574094., 1579492., 1584890., 1590288.,
      1595686., 1601084., 1606482., 1611880., 1617278., 1622676., 1628074.,
      1614362., 1619956., 1625550., 1631144., 1636738., 1642332., 1647926.,
      1653520., 1659114., 1664708., 1670302., 1675896., 1681490., 1687084.,
      1670824., 1676614., 1682404., 1688194., 1693984., 1699774., 1705564.,
      1711354., 1717144., 1722934., 1728724., 1734514., 1740304., 1746094.,
      2900346., 2906332., 2912318., 2918304., 2924290., 2930276., 2936262.,
      2942248., 2948234., 2954220., 2960206., 2966192., 2972178., 2978164.,
      2995224., 3001406., 3007588., 3013770., 3019952., 3026134., 3032316.,
      3038498., 3044680., 3050862., 3057044., 3063226., 3069408., 3075590.,
      3090102., 3096480., 3102858., 3109236., 3115614., 3121992., 3128370.,
      3134748., 3141126., 3147504., 3153882., 3160260., 3166638., 3173016.,
      3184980., 3191554., 3198128., 3204702., 3211276., 3217850., 3224424.,
      3230998., 3237572., 3244146., 3250720., 3257294., 3263868., 3270442.,
      3279858., 3286628., 3293398., 3300168., 3306938., 3313708., 3320478.,
      3327248., 3334018., 3340788., 3347558., 3354328., 3361098., 3367868.,
      3374736., 3381702., 3388668., 3395634., 3402600., 3409566., 3416532.,
      3423498., 3430464., 3437430., 3444396., 3451362., 3458328., 3465294.,
      3469614., 3476776., 3483938., 3491100., 3498262., 3505424., 3512586.,
      3519748., 3526910., 3534072., 3541234., 3548396., 3555558., 3562720.,
      3564492., 3571850., 3579208., 3586566., 3593924., 3601282., 3608640.,
      3615998., 3623356., 3630714., 3638072., 3645430., 3652788., 3660146.,
      3659370., 3666924., 3674478., 3682032., 3689586., 3697140., 3704694.,
      3712248., 3719802., 3727356., 3734910., 3742464., 3750018., 3757572.,
      3754248., 3761998., 3769748., 3777498., 3785248., 3792998., 3800748.,
      3808498., 3816248., 3823998., 3831748., 3839498., 3847248., 3854998.,
      3849126., 3857072., 3865018., 3872964., 3880910., 3888856., 3896802.,
      3904748., 3912694., 3920640., 3928586., 3936532., 3944478., 3952424.,
      3944004., 3952146., 3960288., 3968430., 3976572., 3984714., 3992856.,
      4000998., 4009140., 4017282., 4025424., 4033566., 4041708., 4049850.,
      4038882., 4047220., 4055558., 4063896., 4072234., 4080572., 4088910.,
      4097248., 4105586., 4113924., 4122262., 4130600., 4138938., 4147276.,
      4133760., 4142294., 4150828., 4159362., 4167896., 4176430., 4184964.,
      4193498., 4202032., 4210566., 4219100., 4227634., 4236168., 4244702.,
      4228638., 4237368., 4246098., 4254828., 4263558., 4272288., 4281018.,
      4289748., 4298478., 4307208., 4315938., 4324668., 4333398., 4342128.};
  const int batches = 3;
  const int m = 15;
  const int k = 14;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK14xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      13756.,   13862.,   13968.,   14074.,   14180.,   14286.,   14392.,
      14498.,   14604.,   14710.,   14816.,   14922.,   15028.,   15134.,
      15240.,   33077.,   33379.,   33681.,   33983.,   34285.,   34587.,
      34889.,   35191.,   35493.,   35795.,   36097.,   36399.,   36701.,
      37003.,   37305.,   52398.,   52896.,   53394.,   53892.,   54390.,
      54888.,   55386.,   55884.,   56382.,   56880.,   57378.,   57876.,
      58374.,   58872.,   59370.,   71719.,   72413.,   73107.,   73801.,
      74495.,   75189.,   75883.,   76577.,   77271.,   77965.,   78659.,
      79353.,   80047.,   80741.,   81435.,   91040.,   91930.,   92820.,
      93710.,   94600.,   95490.,   96380.,   97270.,   98160.,   99050.,
      99940.,   100830.,  101720.,  102610.,  103500.,  110361.,  111447.,
      112533.,  113619.,  114705.,  115791.,  116877.,  117963.,  119049.,
      120135.,  121221.,  122307.,  123393.,  124479.,  125565.,  129682.,
      130964.,  132246.,  133528.,  134810.,  136092.,  137374.,  138656.,
      139938.,  141220.,  142502.,  143784.,  145066.,  146348.,  147630.,
      149003.,  150481.,  151959.,  153437.,  154915.,  156393.,  157871.,
      159349.,  160827.,  162305.,  163783.,  165261.,  166739.,  168217.,
      169695.,  168324.,  169998.,  171672.,  173346.,  175020.,  176694.,
      178368.,  180042.,  181716.,  183390.,  185064.,  186738.,  188412.,
      190086.,  191760.,  187645.,  189515.,  191385.,  193255.,  195125.,
      196995.,  198865.,  200735.,  202605.,  204475.,  206345.,  208215.,
      210085.,  211955.,  213825.,  206966.,  209032.,  211098.,  213164.,
      215230.,  217296.,  219362.,  221428.,  223494.,  225560.,  227626.,
      229692.,  231758.,  233824.,  235890.,  226287.,  228549.,  230811.,
      233073.,  235335.,  237597.,  239859.,  242121.,  244383.,  246645.,
      248907.,  251169.,  253431.,  255693.,  257955.,  245608.,  248066.,
      250524.,  252982.,  255440.,  257898.,  260356.,  262814.,  265272.,
      267730.,  270188.,  272646.,  275104.,  277562.,  280020.,  264929.,
      267583.,  270237.,  272891.,  275545.,  278199.,  280853.,  283507.,
      286161.,  288815.,  291469.,  294123.,  296777.,  299431.,  302085.,
      284250.,  287100.,  289950.,  292800.,  295650.,  298500.,  301350.,
      304200.,  307050.,  309900.,  312750.,  315600.,  318450.,  321300.,
      324150.,  943021.,  946067.,  949113.,  952159.,  955205.,  958251.,
      961297.,  964343.,  967389.,  970435.,  973481.,  976527.,  979573.,
      982619.,  985665.,  1003502., 1006744., 1009986., 1013228., 1016470.,
      1019712., 1022954., 1026196., 1029438., 1032680., 1035922., 1039164.,
      1042406., 1045648., 1048890., 1063983., 1067421., 1070859., 1074297.,
      1077735., 1081173., 1084611., 1088049., 1091487., 1094925., 1098363.,
      1101801., 1105239., 1108677., 1112115., 1124464., 1128098., 1131732.,
      1135366., 1139000., 1142634., 1146268., 1149902., 1153536., 1157170.,
      1160804., 1164438., 1168072., 1171706., 1175340., 1184945., 1188775.,
      1192605., 1196435., 1200265., 1204095., 1207925., 1211755., 1215585.,
      1219415., 1223245., 1227075., 1230905., 1234735., 1238565., 1245426.,
      1249452., 1253478., 1257504., 1261530., 1265556., 1269582., 1273608.,
      1277634., 1281660., 1285686., 1289712., 1293738., 1297764., 1301790.,
      1305907., 1310129., 1314351., 1318573., 1322795., 1327017., 1331239.,
      1335461., 1339683., 1343905., 1348127., 1352349., 1356571., 1360793.,
      1365015., 1366388., 1370806., 1375224., 1379642., 1384060., 1388478.,
      1392896., 1397314., 1401732., 1406150., 1410568., 1414986., 1419404.,
      1423822., 1428240., 1426869., 1431483., 1436097., 1440711., 1445325.,
      1449939., 1454553., 1459167., 1463781., 1468395., 1473009., 1477623.,
      1482237., 1486851., 1491465., 1487350., 1492160., 1496970., 1501780.,
      1506590., 1511400., 1516210., 1521020., 1525830., 1530640., 1535450.,
      1540260., 1545070., 1549880., 1554690., 1547831., 1552837., 1557843.,
      1562849., 1567855., 1572861., 1577867., 1582873., 1587879., 1592885.,
      1597891., 1602897., 1607903., 1612909., 1617915., 1608312., 1613514.,
      1618716., 1623918., 1629120., 1634322., 1639524., 1644726., 1649928.,
      1655130., 1660332., 1665534., 1670736., 1675938., 1681140., 1668793.,
      1674191., 1679589., 1684987., 1690385., 1695783., 1701181., 1706579.,
      1711977., 1717375., 1722773., 1728171., 1733569., 1738967., 1744365.,
      1729274., 1734868., 1740462., 1746056., 1751650., 1757244., 1762838.,
      1768432., 1774026., 1779620., 1785214., 1790808., 1796402., 1801996.,
      1807590., 1789755., 1795545., 1801335., 1807125., 1812915., 1818705.,
      1824495., 1830285., 1836075., 1841865., 1847655., 1853445., 1859235.,
      1865025., 1870815., 3107086., 3113072., 3119058., 3125044., 3131030.,
      3137016., 3143002., 3148988., 3154974., 3160960., 3166946., 3172932.,
      3178918., 3184904., 3190890., 3208727., 3214909., 3221091., 3227273.,
      3233455., 3239637., 3245819., 3252001., 3258183., 3264365., 3270547.,
      3276729., 3282911., 3289093., 3295275., 3310368., 3316746., 3323124.,
      3329502., 3335880., 3342258., 3348636., 3355014., 3361392., 3367770.,
      3374148., 3380526., 3386904., 3393282., 3399660., 3412009., 3418583.,
      3425157., 3431731., 3438305., 3444879., 3451453., 3458027., 3464601.,
      3471175., 3477749., 3484323., 3490897., 3497471., 3504045., 3513650.,
      3520420., 3527190., 3533960., 3540730., 3547500., 3554270., 3561040.,
      3567810., 3574580., 3581350., 3588120., 3594890., 3601660., 3608430.,
      3615291., 3622257., 3629223., 3636189., 3643155., 3650121., 3657087.,
      3664053., 3671019., 3677985., 3684951., 3691917., 3698883., 3705849.,
      3712815., 3716932., 3724094., 3731256., 3738418., 3745580., 3752742.,
      3759904., 3767066., 3774228., 3781390., 3788552., 3795714., 3802876.,
      3810038., 3817200., 3818573., 3825931., 3833289., 3840647., 3848005.,
      3855363., 3862721., 3870079., 3877437., 3884795., 3892153., 3899511.,
      3906869., 3914227., 3921585., 3920214., 3927768., 3935322., 3942876.,
      3950430., 3957984., 3965538., 3973092., 3980646., 3988200., 3995754.,
      4003308., 4010862., 4018416., 4025970., 4021855., 4029605., 4037355.,
      4045105., 4052855., 4060605., 4068355., 4076105., 4083855., 4091605.,
      4099355., 4107105., 4114855., 4122605., 4130355., 4123496., 4131442.,
      4139388., 4147334., 4155280., 4163226., 4171172., 4179118., 4187064.,
      4195010., 4202956., 4210902., 4218848., 4226794., 4234740., 4225137.,
      4233279., 4241421., 4249563., 4257705., 4265847., 4273989., 4282131.,
      4290273., 4298415., 4306557., 4314699., 4322841., 4330983., 4339125.,
      4326778., 4335116., 4343454., 4351792., 4360130., 4368468., 4376806.,
      4385144., 4393482., 4401820., 4410158., 4418496., 4426834., 4435172.,
      4443510., 4428419., 4436953., 4445487., 4454021., 4462555., 4471089.,
      4479623., 4488157., 4496691., 4505225., 4513759., 4522293., 4530827.,
      4539361., 4547895., 4530060., 4538790., 4547520., 4556250., 4564980.,
      4573710., 4582440., 4591170., 4599900., 4608630., 4617360., 4626090.,
      4634820., 4643550., 4652280.};
  const int batches = 3;
  const int m = 15;
  const int k = 14;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK14xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      14666.,   14772.,   14878.,   14984.,   15090.,   15196.,   15302.,
      15408.,   15514.,   15620.,   15726.,   15832.,   15938.,   16044.,
      16150.,   16256.,   35262.,   35564.,   35866.,   36168.,   36470.,
      36772.,   37074.,   37376.,   37678.,   37980.,   38282.,   38584.,
      38886.,   39188.,   39490.,   39792.,   55858.,   56356.,   56854.,
      57352.,   57850.,   58348.,   58846.,   59344.,   59842.,   60340.,
      60838.,   61336.,   61834.,   62332.,   62830.,   63328.,   76454.,
      77148.,   77842.,   78536.,   79230.,   79924.,   80618.,   81312.,
      82006.,   82700.,   83394.,   84088.,   84782.,   85476.,   86170.,
      86864.,   97050.,   97940.,   98830.,   99720.,   100610.,  101500.,
      102390.,  103280.,  104170.,  105060.,  105950.,  106840.,  107730.,
      108620.,  109510.,  110400.,  117646.,  118732.,  119818.,  120904.,
      121990.,  123076.,  124162.,  125248.,  126334.,  127420.,  128506.,
      129592.,  130678.,  131764.,  132850.,  133936.,  138242.,  139524.,
      140806.,  142088.,  143370.,  144652.,  145934.,  147216.,  148498.,
      149780.,  151062.,  152344.,  153626.,  154908.,  156190.,  157472.,
      158838.,  160316.,  161794.,  163272.,  164750.,  166228.,  167706.,
      169184.,  170662.,  172140.,  173618.,  175096.,  176574.,  178052.,
      179530.,  181008.,  179434.,  181108.,  182782.,  184456.,  186130.,
      187804.,  189478.,  191152.,  192826.,  194500.,  196174.,  197848.,
      199522.,  201196.,  202870.,  204544.,  200030.,  201900.,  203770.,
      205640.,  207510.,  209380.,  211250.,  213120.,  214990.,  216860.,
      218730.,  220600.,  222470.,  224340.,  226210.,  228080.,  220626.,
      222692.,  224758.,  226824.,  228890.,  230956.,  233022.,  235088.,
      237154.,  239220.,  241286.,  243352.,  245418.,  247484.,  249550.,
      251616.,  241222.,  243484.,  245746.,  248008.,  250270.,  252532.,
      254794.,  257056.,  259318.,  261580.,  263842.,  266104.,  268366.,
      270628.,  272890.,  275152.,  261818.,  264276.,  266734.,  269192.,
      271650.,  274108.,  276566.,  279024.,  281482.,  283940.,  286398.,
      288856.,  291314.,  293772.,  296230.,  298688.,  282414.,  285068.,
      287722.,  290376.,  293030.,  295684.,  298338.,  300992.,  303646.,
      306300.,  308954.,  311608.,  314262.,  316916.,  319570.,  322224.,
      303010.,  305860.,  308710.,  311560.,  314410.,  317260.,  320110.,
      322960.,  325810.,  328660.,  331510.,  334360.,  337210.,  340060.,
      342910.,  345760.,  1005686., 1008732., 1011778., 1014824., 1017870.,
      1020916., 1023962., 1027008., 1030054., 1033100., 1036146., 1039192.,
      1042238., 1045284., 1048330., 1051376., 1070186., 1073428., 1076670.,
      1079912., 1083154., 1086396., 1089638., 1092880., 1096122., 1099364.,
      1102606., 1105848., 1109090., 1112332., 1115574., 1118816., 1134686.,
      1138124., 1141562., 1145000., 1148438., 1151876., 1155314., 1158752.,
      1162190., 1165628., 1169066., 1172504., 1175942., 1179380., 1182818.,
      1186256., 1199186., 1202820., 1206454., 1210088., 1213722., 1217356.,
      1220990., 1224624., 1228258., 1231892., 1235526., 1239160., 1242794.,
      1246428., 1250062., 1253696., 1263686., 1267516., 1271346., 1275176.,
      1279006., 1282836., 1286666., 1290496., 1294326., 1298156., 1301986.,
      1305816., 1309646., 1313476., 1317306., 1321136., 1328186., 1332212.,
      1336238., 1340264., 1344290., 1348316., 1352342., 1356368., 1360394.,
      1364420., 1368446., 1372472., 1376498., 1380524., 1384550., 1388576.,
      1392686., 1396908., 1401130., 1405352., 1409574., 1413796., 1418018.,
      1422240., 1426462., 1430684., 1434906., 1439128., 1443350., 1447572.,
      1451794., 1456016., 1457186., 1461604., 1466022., 1470440., 1474858.,
      1479276., 1483694., 1488112., 1492530., 1496948., 1501366., 1505784.,
      1510202., 1514620., 1519038., 1523456., 1521686., 1526300., 1530914.,
      1535528., 1540142., 1544756., 1549370., 1553984., 1558598., 1563212.,
      1567826., 1572440., 1577054., 1581668., 1586282., 1590896., 1586186.,
      1590996., 1595806., 1600616., 1605426., 1610236., 1615046., 1619856.,
      1624666., 1629476., 1634286., 1639096., 1643906., 1648716., 1653526.,
      1658336., 1650686., 1655692., 1660698., 1665704., 1670710., 1675716.,
      1680722., 1685728., 1690734., 1695740., 1700746., 1705752., 1710758.,
      1715764., 1720770., 1725776., 1715186., 1720388., 1725590., 1730792.,
      1735994., 1741196., 1746398., 1751600., 1756802., 1762004., 1767206.,
      1772408., 1777610., 1782812., 1788014., 1793216., 1779686., 1785084.,
      1790482., 1795880., 1801278., 1806676., 1812074., 1817472., 1822870.,
      1828268., 1833666., 1839064., 1844462., 1849860., 1855258., 1860656.,
      1844186., 1849780., 1855374., 1860968., 1866562., 1872156., 1877750.,
      1883344., 1888938., 1894532., 1900126., 1905720., 1911314., 1916908.,
      1922502., 1928096., 1908686., 1914476., 1920266., 1926056., 1931846.,
      1937636., 1943426., 1949216., 1955006., 1960796., 1966586., 1972376.,
      1978166., 1983956., 1989746., 1995536., 3313826., 3319812., 3325798.,
      3331784., 3337770., 3343756., 3349742., 3355728., 3361714., 3367700.,
      3373686., 3379672., 3385658., 3391644., 3397630., 3403616., 3422230.,
      3428412., 3434594., 3440776., 3446958., 3453140., 3459322., 3465504.,
      3471686., 3477868., 3484050., 3490232., 3496414., 3502596., 3508778.,
      3514960., 3530634., 3537012., 3543390., 3549768., 3556146., 3562524.,
      3568902., 3575280., 3581658., 3588036., 3594414., 3600792., 3607170.,
      3613548., 3619926., 3626304., 3639038., 3645612., 3652186., 3658760.,
      3665334., 3671908., 3678482., 3685056., 3691630., 3698204., 3704778.,
      3711352., 3717926., 3724500., 3731074., 3737648., 3747442., 3754212.,
      3760982., 3767752., 3774522., 3781292., 3788062., 3794832., 3801602.,
      3808372., 3815142., 3821912., 3828682., 3835452., 3842222., 3848992.,
      3855846., 3862812., 3869778., 3876744., 3883710., 3890676., 3897642.,
      3904608., 3911574., 3918540., 3925506., 3932472., 3939438., 3946404.,
      3953370., 3960336., 3964250., 3971412., 3978574., 3985736., 3992898.,
      4000060., 4007222., 4014384., 4021546., 4028708., 4035870., 4043032.,
      4050194., 4057356., 4064518., 4071680., 4072654., 4080012., 4087370.,
      4094728., 4102086., 4109444., 4116802., 4124160., 4131518., 4138876.,
      4146234., 4153592., 4160950., 4168308., 4175666., 4183024., 4181058.,
      4188612., 4196166., 4203720., 4211274., 4218828., 4226382., 4233936.,
      4241490., 4249044., 4256598., 4264152., 4271706., 4279260., 4286814.,
      4294368., 4289462., 4297212., 4304962., 4312712., 4320462., 4328212.,
      4335962., 4343712., 4351462., 4359212., 4366962., 4374712., 4382462.,
      4390212., 4397962., 4405712., 4397866., 4405812., 4413758., 4421704.,
      4429650., 4437596., 4445542., 4453488., 4461434., 4469380., 4477326.,
      4485272., 4493218., 4501164., 4509110., 4517056., 4506270., 4514412.,
      4522554., 4530696., 4538838., 4546980., 4555122., 4563264., 4571406.,
      4579548., 4587690., 4595832., 4603974., 4612116., 4620258., 4628400.,
      4614674., 4623012., 4631350., 4639688., 4648026., 4656364., 4664702.,
      4673040., 4681378., 4689716., 4698054., 4706392., 4714730., 4723068.,
      4731406., 4739744., 4723078., 4731612., 4740146., 4748680., 4757214.,
      4765748., 4774282., 4782816., 4791350., 4799884., 4808418., 4816952.,
      4825486., 4834020., 4842554., 4851088., 4831482., 4840212., 4848942.,
      4857672., 4866402., 4875132., 4883862., 4892592., 4901322., 4910052.,
      4918782., 4927512., 4936242., 4944972., 4953702., 4962432.};
  const int batches = 3;
  const int m = 15;
  const int k = 14;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK15xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      15801.,   15922.,   16043.,   16164.,   16285.,   16406.,   16527.,
      16648.,   16769.,   16890.,   17011.,   17132.,   17253.,   17374.,
      38090.,   38436.,   38782.,   39128.,   39474.,   39820.,   40166.,
      40512.,   40858.,   41204.,   41550.,   41896.,   42242.,   42588.,
      60379.,   60950.,   61521.,   62092.,   62663.,   63234.,   63805.,
      64376.,   64947.,   65518.,   66089.,   66660.,   67231.,   67802.,
      82668.,   83464.,   84260.,   85056.,   85852.,   86648.,   87444.,
      88240.,   89036.,   89832.,   90628.,   91424.,   92220.,   93016.,
      104957.,  105978.,  106999.,  108020.,  109041.,  110062.,  111083.,
      112104.,  113125.,  114146.,  115167.,  116188.,  117209.,  118230.,
      127246.,  128492.,  129738.,  130984.,  132230.,  133476.,  134722.,
      135968.,  137214.,  138460.,  139706.,  140952.,  142198.,  143444.,
      149535.,  151006.,  152477.,  153948.,  155419.,  156890.,  158361.,
      159832.,  161303.,  162774.,  164245.,  165716.,  167187.,  168658.,
      171824.,  173520.,  175216.,  176912.,  178608.,  180304.,  182000.,
      183696.,  185392.,  187088.,  188784.,  190480.,  192176.,  193872.,
      194113.,  196034.,  197955.,  199876.,  201797.,  203718.,  205639.,
      207560.,  209481.,  211402.,  213323.,  215244.,  217165.,  219086.,
      216402.,  218548.,  220694.,  222840.,  224986.,  227132.,  229278.,
      231424.,  233570.,  235716.,  237862.,  240008.,  242154.,  244300.,
      238691.,  241062.,  243433.,  245804.,  248175.,  250546.,  252917.,
      255288.,  257659.,  260030.,  262401.,  264772.,  267143.,  269514.,
      260980.,  263576.,  266172.,  268768.,  271364.,  273960.,  276556.,
      279152.,  281748.,  284344.,  286940.,  289536.,  292132.,  294728.,
      283269.,  286090.,  288911.,  291732.,  294553.,  297374.,  300195.,
      303016.,  305837.,  308658.,  311479.,  314300.,  317121.,  319942.,
      305558.,  308604.,  311650.,  314696.,  317742.,  320788.,  323834.,
      326880.,  329926.,  332972.,  336018.,  339064.,  342110.,  345156.,
      327847.,  331118.,  334389.,  337660.,  340931.,  344202.,  347473.,
      350744.,  354015.,  357286.,  360557.,  363828.,  367099.,  370370.,
      1084086., 1087582., 1091078., 1094574., 1098070., 1101566., 1105062.,
      1108558., 1112054., 1115550., 1119046., 1122542., 1126038., 1129534.,
      1153625., 1157346., 1161067., 1164788., 1168509., 1172230., 1175951.,
      1179672., 1183393., 1187114., 1190835., 1194556., 1198277., 1201998.,
      1223164., 1227110., 1231056., 1235002., 1238948., 1242894., 1246840.,
      1250786., 1254732., 1258678., 1262624., 1266570., 1270516., 1274462.,
      1292703., 1296874., 1301045., 1305216., 1309387., 1313558., 1317729.,
      1321900., 1326071., 1330242., 1334413., 1338584., 1342755., 1346926.,
      1362242., 1366638., 1371034., 1375430., 1379826., 1384222., 1388618.,
      1393014., 1397410., 1401806., 1406202., 1410598., 1414994., 1419390.,
      1431781., 1436402., 1441023., 1445644., 1450265., 1454886., 1459507.,
      1464128., 1468749., 1473370., 1477991., 1482612., 1487233., 1491854.,
      1501320., 1506166., 1511012., 1515858., 1520704., 1525550., 1530396.,
      1535242., 1540088., 1544934., 1549780., 1554626., 1559472., 1564318.,
      1570859., 1575930., 1581001., 1586072., 1591143., 1596214., 1601285.,
      1606356., 1611427., 1616498., 1621569., 1626640., 1631711., 1636782.,
      1640398., 1645694., 1650990., 1656286., 1661582., 1666878., 1672174.,
      1677470., 1682766., 1688062., 1693358., 1698654., 1703950., 1709246.,
      1709937., 1715458., 1720979., 1726500., 1732021., 1737542., 1743063.,
      1748584., 1754105., 1759626., 1765147., 1770668., 1776189., 1781710.,
      1779476., 1785222., 1790968., 1796714., 1802460., 1808206., 1813952.,
      1819698., 1825444., 1831190., 1836936., 1842682., 1848428., 1854174.,
      1849015., 1854986., 1860957., 1866928., 1872899., 1878870., 1884841.,
      1890812., 1896783., 1902754., 1908725., 1914696., 1920667., 1926638.,
      1918554., 1924750., 1930946., 1937142., 1943338., 1949534., 1955730.,
      1961926., 1968122., 1974318., 1980514., 1986710., 1992906., 1999102.,
      1988093., 1994514., 2000935., 2007356., 2013777., 2020198., 2026619.,
      2033040., 2039461., 2045882., 2052303., 2058724., 2065145., 2071566.,
      2057632., 2064278., 2070924., 2077570., 2084216., 2090862., 2097508.,
      2104154., 2110800., 2117446., 2124092., 2130738., 2137384., 2144030.,
      3569871., 3576742., 3583613., 3590484., 3597355., 3604226., 3611097.,
      3617968., 3624839., 3631710., 3638581., 3645452., 3652323., 3659194.,
      3686660., 3693756., 3700852., 3707948., 3715044., 3722140., 3729236.,
      3736332., 3743428., 3750524., 3757620., 3764716., 3771812., 3778908.,
      3803449., 3810770., 3818091., 3825412., 3832733., 3840054., 3847375.,
      3854696., 3862017., 3869338., 3876659., 3883980., 3891301., 3898622.,
      3920238., 3927784., 3935330., 3942876., 3950422., 3957968., 3965514.,
      3973060., 3980606., 3988152., 3995698., 4003244., 4010790., 4018336.,
      4037027., 4044798., 4052569., 4060340., 4068111., 4075882., 4083653.,
      4091424., 4099195., 4106966., 4114737., 4122508., 4130279., 4138050.,
      4153816., 4161812., 4169808., 4177804., 4185800., 4193796., 4201792.,
      4209788., 4217784., 4225780., 4233776., 4241772., 4249768., 4257764.,
      4270605., 4278826., 4287047., 4295268., 4303489., 4311710., 4319931.,
      4328152., 4336373., 4344594., 4352815., 4361036., 4369257., 4377478.,
      4387394., 4395840., 4404286., 4412732., 4421178., 4429624., 4438070.,
      4446516., 4454962., 4463408., 4471854., 4480300., 4488746., 4497192.,
      4504183., 4512854., 4521525., 4530196., 4538867., 4547538., 4556209.,
      4564880., 4573551., 4582222., 4590893., 4599564., 4608235., 4616906.,
      4620972., 4629868., 4638764., 4647660., 4656556., 4665452., 4674348.,
      4683244., 4692140., 4701036., 4709932., 4718828., 4727724., 4736620.,
      4737761., 4746882., 4756003., 4765124., 4774245., 4783366., 4792487.,
      4801608., 4810729., 4819850., 4828971., 4838092., 4847213., 4856334.,
      4854550., 4863896., 4873242., 4882588., 4891934., 4901280., 4910626.,
      4919972., 4929318., 4938664., 4948010., 4957356., 4966702., 4976048.,
      4971339., 4980910., 4990481., 5000052., 5009623., 5019194., 5028765.,
      5038336., 5047907., 5057478., 5067049., 5076620., 5086191., 5095762.,
      5088128., 5097924., 5107720., 5117516., 5127312., 5137108., 5146904.,
      5156700., 5166496., 5176292., 5186088., 5195884., 5205680., 5215476.,
      5204917., 5214938., 5224959., 5234980., 5245001., 5255022., 5265043.,
      5275064., 5285085., 5295106., 5305127., 5315148., 5325169., 5335190.};
  const int batches = 3;
  const int m = 15;
  const int k = 15;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK15xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      16921.,   17042.,   17163.,   17284.,   17405.,   17526.,   17647.,
      17768.,   17889.,   18010.,   18131.,   18252.,   18373.,   18494.,
      18615.,   40786.,   41132.,   41478.,   41824.,   42170.,   42516.,
      42862.,   43208.,   43554.,   43900.,   44246.,   44592.,   44938.,
      45284.,   45630.,   64651.,   65222.,   65793.,   66364.,   66935.,
      67506.,   68077.,   68648.,   69219.,   69790.,   70361.,   70932.,
      71503.,   72074.,   72645.,   88516.,   89312.,   90108.,   90904.,
      91700.,   92496.,   93292.,   94088.,   94884.,   95680.,   96476.,
      97272.,   98068.,   98864.,   99660.,   112381.,  113402.,  114423.,
      115444.,  116465.,  117486.,  118507.,  119528.,  120549.,  121570.,
      122591.,  123612.,  124633.,  125654.,  126675.,  136246.,  137492.,
      138738.,  139984.,  141230.,  142476.,  143722.,  144968.,  146214.,
      147460.,  148706.,  149952.,  151198.,  152444.,  153690.,  160111.,
      161582.,  163053.,  164524.,  165995.,  167466.,  168937.,  170408.,
      171879.,  173350.,  174821.,  176292.,  177763.,  179234.,  180705.,
      183976.,  185672.,  187368.,  189064.,  190760.,  192456.,  194152.,
      195848.,  197544.,  199240.,  200936.,  202632.,  204328.,  206024.,
      207720.,  207841.,  209762.,  211683.,  213604.,  215525.,  217446.,
      219367.,  221288.,  223209.,  225130.,  227051.,  228972.,  230893.,
      232814.,  234735.,  231706.,  233852.,  235998.,  238144.,  240290.,
      242436.,  244582.,  246728.,  248874.,  251020.,  253166.,  255312.,
      257458.,  259604.,  261750.,  255571.,  257942.,  260313.,  262684.,
      265055.,  267426.,  269797.,  272168.,  274539.,  276910.,  279281.,
      281652.,  284023.,  286394.,  288765.,  279436.,  282032.,  284628.,
      287224.,  289820.,  292416.,  295012.,  297608.,  300204.,  302800.,
      305396.,  307992.,  310588.,  313184.,  315780.,  303301.,  306122.,
      308943.,  311764.,  314585.,  317406.,  320227.,  323048.,  325869.,
      328690.,  331511.,  334332.,  337153.,  339974.,  342795.,  327166.,
      330212.,  333258.,  336304.,  339350.,  342396.,  345442.,  348488.,
      351534.,  354580.,  357626.,  360672.,  363718.,  366764.,  369810.,
      351031.,  354302.,  357573.,  360844.,  364115.,  367386.,  370657.,
      373928.,  377199.,  380470.,  383741.,  387012.,  390283.,  393554.,
      396825.,  1161271., 1164767., 1168263., 1171759., 1175255., 1178751.,
      1182247., 1185743., 1189239., 1192735., 1196231., 1199727., 1203223.,
      1206719., 1210215., 1235761., 1239482., 1243203., 1246924., 1250645.,
      1254366., 1258087., 1261808., 1265529., 1269250., 1272971., 1276692.,
      1280413., 1284134., 1287855., 1310251., 1314197., 1318143., 1322089.,
      1326035., 1329981., 1333927., 1337873., 1341819., 1345765., 1349711.,
      1353657., 1357603., 1361549., 1365495., 1384741., 1388912., 1393083.,
      1397254., 1401425., 1405596., 1409767., 1413938., 1418109., 1422280.,
      1426451., 1430622., 1434793., 1438964., 1443135., 1459231., 1463627.,
      1468023., 1472419., 1476815., 1481211., 1485607., 1490003., 1494399.,
      1498795., 1503191., 1507587., 1511983., 1516379., 1520775., 1533721.,
      1538342., 1542963., 1547584., 1552205., 1556826., 1561447., 1566068.,
      1570689., 1575310., 1579931., 1584552., 1589173., 1593794., 1598415.,
      1608211., 1613057., 1617903., 1622749., 1627595., 1632441., 1637287.,
      1642133., 1646979., 1651825., 1656671., 1661517., 1666363., 1671209.,
      1676055., 1682701., 1687772., 1692843., 1697914., 1702985., 1708056.,
      1713127., 1718198., 1723269., 1728340., 1733411., 1738482., 1743553.,
      1748624., 1753695., 1757191., 1762487., 1767783., 1773079., 1778375.,
      1783671., 1788967., 1794263., 1799559., 1804855., 1810151., 1815447.,
      1820743., 1826039., 1831335., 1831681., 1837202., 1842723., 1848244.,
      1853765., 1859286., 1864807., 1870328., 1875849., 1881370., 1886891.,
      1892412., 1897933., 1903454., 1908975., 1906171., 1911917., 1917663.,
      1923409., 1929155., 1934901., 1940647., 1946393., 1952139., 1957885.,
      1963631., 1969377., 1975123., 1980869., 1986615., 1980661., 1986632.,
      1992603., 1998574., 2004545., 2010516., 2016487., 2022458., 2028429.,
      2034400., 2040371., 2046342., 2052313., 2058284., 2064255., 2055151.,
      2061347., 2067543., 2073739., 2079935., 2086131., 2092327., 2098523.,
      2104719., 2110915., 2117111., 2123307., 2129503., 2135699., 2141895.,
      2129641., 2136062., 2142483., 2148904., 2155325., 2161746., 2168167.,
      2174588., 2181009., 2187430., 2193851., 2200272., 2206693., 2213114.,
      2219535., 2204131., 2210777., 2217423., 2224069., 2230715., 2237361.,
      2244007., 2250653., 2257299., 2263945., 2270591., 2277237., 2283883.,
      2290529., 2297175., 3824371., 3831242., 3838113., 3844984., 3851855.,
      3858726., 3865597., 3872468., 3879339., 3886210., 3893081., 3899952.,
      3906823., 3913694., 3920565., 3949486., 3956582., 3963678., 3970774.,
      3977870., 3984966., 3992062., 3999158., 4006254., 4013350., 4020446.,
      4027542., 4034638., 4041734., 4048830., 4074601., 4081922., 4089243.,
      4096564., 4103885., 4111206., 4118527., 4125848., 4133169., 4140490.,
      4147811., 4155132., 4162453., 4169774., 4177095., 4199716., 4207262.,
      4214808., 4222354., 4229900., 4237446., 4244992., 4252538., 4260084.,
      4267630., 4275176., 4282722., 4290268., 4297814., 4305360., 4324831.,
      4332602., 4340373., 4348144., 4355915., 4363686., 4371457., 4379228.,
      4386999., 4394770., 4402541., 4410312., 4418083., 4425854., 4433625.,
      4449946., 4457942., 4465938., 4473934., 4481930., 4489926., 4497922.,
      4505918., 4513914., 4521910., 4529906., 4537902., 4545898., 4553894.,
      4561890., 4575061., 4583282., 4591503., 4599724., 4607945., 4616166.,
      4624387., 4632608., 4640829., 4649050., 4657271., 4665492., 4673713.,
      4681934., 4690155., 4700176., 4708622., 4717068., 4725514., 4733960.,
      4742406., 4750852., 4759298., 4767744., 4776190., 4784636., 4793082.,
      4801528., 4809974., 4818420., 4825291., 4833962., 4842633., 4851304.,
      4859975., 4868646., 4877317., 4885988., 4894659., 4903330., 4912001.,
      4920672., 4929343., 4938014., 4946685., 4950406., 4959302., 4968198.,
      4977094., 4985990., 4994886., 5003782., 5012678., 5021574., 5030470.,
      5039366., 5048262., 5057158., 5066054., 5074950., 5075521., 5084642.,
      5093763., 5102884., 5112005., 5121126., 5130247., 5139368., 5148489.,
      5157610., 5166731., 5175852., 5184973., 5194094., 5203215., 5200636.,
      5209982., 5219328., 5228674., 5238020., 5247366., 5256712., 5266058.,
      5275404., 5284750., 5294096., 5303442., 5312788., 5322134., 5331480.,
      5325751., 5335322., 5344893., 5354464., 5364035., 5373606., 5383177.,
      5392748., 5402319., 5411890., 5421461., 5431032., 5440603., 5450174.,
      5459745., 5450866., 5460662., 5470458., 5480254., 5490050., 5499846.,
      5509642., 5519438., 5529234., 5539030., 5548826., 5558622., 5568418.,
      5578214., 5588010., 5575981., 5586002., 5596023., 5606044., 5616065.,
      5626086., 5636107., 5646128., 5656149., 5666170., 5676191., 5686212.,
      5696233., 5706254., 5716275.};
  const int batches = 3;
  const int m = 15;
  const int k = 15;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK15xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      18041.,   18162.,   18283.,   18404.,   18525.,   18646.,   18767.,
      18888.,   19009.,   19130.,   19251.,   19372.,   19493.,   19614.,
      19735.,   19856.,   43482.,   43828.,   44174.,   44520.,   44866.,
      45212.,   45558.,   45904.,   46250.,   46596.,   46942.,   47288.,
      47634.,   47980.,   48326.,   48672.,   68923.,   69494.,   70065.,
      70636.,   71207.,   71778.,   72349.,   72920.,   73491.,   74062.,
      74633.,   75204.,   75775.,   76346.,   76917.,   77488.,   94364.,
      95160.,   95956.,   96752.,   97548.,   98344.,   99140.,   99936.,
      100732.,  101528.,  102324.,  103120.,  103916.,  104712.,  105508.,
      106304.,  119805.,  120826.,  121847.,  122868.,  123889.,  124910.,
      125931.,  126952.,  127973.,  128994.,  130015.,  131036.,  132057.,
      133078.,  134099.,  135120.,  145246.,  146492.,  147738.,  148984.,
      150230.,  151476.,  152722.,  153968.,  155214.,  156460.,  157706.,
      158952.,  160198.,  161444.,  162690.,  163936.,  170687.,  172158.,
      173629.,  175100.,  176571.,  178042.,  179513.,  180984.,  182455.,
      183926.,  185397.,  186868.,  188339.,  189810.,  191281.,  192752.,
      196128.,  197824.,  199520.,  201216.,  202912.,  204608.,  206304.,
      208000.,  209696.,  211392.,  213088.,  214784.,  216480.,  218176.,
      219872.,  221568.,  221569.,  223490.,  225411.,  227332.,  229253.,
      231174.,  233095.,  235016.,  236937.,  238858.,  240779.,  242700.,
      244621.,  246542.,  248463.,  250384.,  247010.,  249156.,  251302.,
      253448.,  255594.,  257740.,  259886.,  262032.,  264178.,  266324.,
      268470.,  270616.,  272762.,  274908.,  277054.,  279200.,  272451.,
      274822.,  277193.,  279564.,  281935.,  284306.,  286677.,  289048.,
      291419.,  293790.,  296161.,  298532.,  300903.,  303274.,  305645.,
      308016.,  297892.,  300488.,  303084.,  305680.,  308276.,  310872.,
      313468.,  316064.,  318660.,  321256.,  323852.,  326448.,  329044.,
      331640.,  334236.,  336832.,  323333.,  326154.,  328975.,  331796.,
      334617.,  337438.,  340259.,  343080.,  345901.,  348722.,  351543.,
      354364.,  357185.,  360006.,  362827.,  365648.,  348774.,  351820.,
      354866.,  357912.,  360958.,  364004.,  367050.,  370096.,  373142.,
      376188.,  379234.,  382280.,  385326.,  388372.,  391418.,  394464.,
      374215.,  377486.,  380757.,  384028.,  387299.,  390570.,  393841.,
      397112.,  400383.,  403654.,  406925.,  410196.,  413467.,  416738.,
      420009.,  423280.,  1238456., 1241952., 1245448., 1248944., 1252440.,
      1255936., 1259432., 1262928., 1266424., 1269920., 1273416., 1276912.,
      1280408., 1283904., 1287400., 1290896., 1317897., 1321618., 1325339.,
      1329060., 1332781., 1336502., 1340223., 1343944., 1347665., 1351386.,
      1355107., 1358828., 1362549., 1366270., 1369991., 1373712., 1397338.,
      1401284., 1405230., 1409176., 1413122., 1417068., 1421014., 1424960.,
      1428906., 1432852., 1436798., 1440744., 1444690., 1448636., 1452582.,
      1456528., 1476779., 1480950., 1485121., 1489292., 1493463., 1497634.,
      1501805., 1505976., 1510147., 1514318., 1518489., 1522660., 1526831.,
      1531002., 1535173., 1539344., 1556220., 1560616., 1565012., 1569408.,
      1573804., 1578200., 1582596., 1586992., 1591388., 1595784., 1600180.,
      1604576., 1608972., 1613368., 1617764., 1622160., 1635661., 1640282.,
      1644903., 1649524., 1654145., 1658766., 1663387., 1668008., 1672629.,
      1677250., 1681871., 1686492., 1691113., 1695734., 1700355., 1704976.,
      1715102., 1719948., 1724794., 1729640., 1734486., 1739332., 1744178.,
      1749024., 1753870., 1758716., 1763562., 1768408., 1773254., 1778100.,
      1782946., 1787792., 1794543., 1799614., 1804685., 1809756., 1814827.,
      1819898., 1824969., 1830040., 1835111., 1840182., 1845253., 1850324.,
      1855395., 1860466., 1865537., 1870608., 1873984., 1879280., 1884576.,
      1889872., 1895168., 1900464., 1905760., 1911056., 1916352., 1921648.,
      1926944., 1932240., 1937536., 1942832., 1948128., 1953424., 1953425.,
      1958946., 1964467., 1969988., 1975509., 1981030., 1986551., 1992072.,
      1997593., 2003114., 2008635., 2014156., 2019677., 2025198., 2030719.,
      2036240., 2032866., 2038612., 2044358., 2050104., 2055850., 2061596.,
      2067342., 2073088., 2078834., 2084580., 2090326., 2096072., 2101818.,
      2107564., 2113310., 2119056., 2112307., 2118278., 2124249., 2130220.,
      2136191., 2142162., 2148133., 2154104., 2160075., 2166046., 2172017.,
      2177988., 2183959., 2189930., 2195901., 2201872., 2191748., 2197944.,
      2204140., 2210336., 2216532., 2222728., 2228924., 2235120., 2241316.,
      2247512., 2253708., 2259904., 2266100., 2272296., 2278492., 2284688.,
      2271189., 2277610., 2284031., 2290452., 2296873., 2303294., 2309715.,
      2316136., 2322557., 2328978., 2335399., 2341820., 2348241., 2354662.,
      2361083., 2367504., 2350630., 2357276., 2363922., 2370568., 2377214.,
      2383860., 2390506., 2397152., 2403798., 2410444., 2417090., 2423736.,
      2430382., 2437028., 2443674., 2450320., 4078871., 4085742., 4092613.,
      4099484., 4106355., 4113226., 4120097., 4126968., 4133839., 4140710.,
      4147581., 4154452., 4161323., 4168194., 4175065., 4181936., 4212312.,
      4219408., 4226504., 4233600., 4240696., 4247792., 4254888., 4261984.,
      4269080., 4276176., 4283272., 4290368., 4297464., 4304560., 4311656.,
      4318752., 4345753., 4353074., 4360395., 4367716., 4375037., 4382358.,
      4389679., 4397000., 4404321., 4411642., 4418963., 4426284., 4433605.,
      4440926., 4448247., 4455568., 4479194., 4486740., 4494286., 4501832.,
      4509378., 4516924., 4524470., 4532016., 4539562., 4547108., 4554654.,
      4562200., 4569746., 4577292., 4584838., 4592384., 4612635., 4620406.,
      4628177., 4635948., 4643719., 4651490., 4659261., 4667032., 4674803.,
      4682574., 4690345., 4698116., 4705887., 4713658., 4721429., 4729200.,
      4746076., 4754072., 4762068., 4770064., 4778060., 4786056., 4794052.,
      4802048., 4810044., 4818040., 4826036., 4834032., 4842028., 4850024.,
      4858020., 4866016., 4879517., 4887738., 4895959., 4904180., 4912401.,
      4920622., 4928843., 4937064., 4945285., 4953506., 4961727., 4969948.,
      4978169., 4986390., 4994611., 5002832., 5012958., 5021404., 5029850.,
      5038296., 5046742., 5055188., 5063634., 5072080., 5080526., 5088972.,
      5097418., 5105864., 5114310., 5122756., 5131202., 5139648., 5146399.,
      5155070., 5163741., 5172412., 5181083., 5189754., 5198425., 5207096.,
      5215767., 5224438., 5233109., 5241780., 5250451., 5259122., 5267793.,
      5276464., 5279840., 5288736., 5297632., 5306528., 5315424., 5324320.,
      5333216., 5342112., 5351008., 5359904., 5368800., 5377696., 5386592.,
      5395488., 5404384., 5413280., 5413281., 5422402., 5431523., 5440644.,
      5449765., 5458886., 5468007., 5477128., 5486249., 5495370., 5504491.,
      5513612., 5522733., 5531854., 5540975., 5550096., 5546722., 5556068.,
      5565414., 5574760., 5584106., 5593452., 5602798., 5612144., 5621490.,
      5630836., 5640182., 5649528., 5658874., 5668220., 5677566., 5686912.,
      5680163., 5689734., 5699305., 5708876., 5718447., 5728018., 5737589.,
      5747160., 5756731., 5766302., 5775873., 5785444., 5795015., 5804586.,
      5814157., 5823728., 5813604., 5823400., 5833196., 5842992., 5852788.,
      5862584., 5872380., 5882176., 5891972., 5901768., 5911564., 5921360.,
      5931156., 5940952., 5950748., 5960544., 5947045., 5957066., 5967087.,
      5977108., 5987129., 5997150., 6007171., 6017192., 6027213., 6037234.,
      6047255., 6057276., 6067297., 6077318., 6087339., 6097360.};
  const int batches = 3;
  const int m = 15;
  const int k = 15;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK16xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      19177.,   19314.,   19451.,   19588.,   19725.,   19862.,   19999.,
      20136.,   20273.,   20410.,   20547.,   20684.,   20821.,   20958.,
      46327.,   46720.,   47113.,   47506.,   47899.,   48292.,   48685.,
      49078.,   49471.,   49864.,   50257.,   50650.,   51043.,   51436.,
      73477.,   74126.,   74775.,   75424.,   76073.,   76722.,   77371.,
      78020.,   78669.,   79318.,   79967.,   80616.,   81265.,   81914.,
      100627.,  101532.,  102437.,  103342.,  104247.,  105152.,  106057.,
      106962.,  107867.,  108772.,  109677.,  110582.,  111487.,  112392.,
      127777.,  128938.,  130099.,  131260.,  132421.,  133582.,  134743.,
      135904.,  137065.,  138226.,  139387.,  140548.,  141709.,  142870.,
      154927.,  156344.,  157761.,  159178.,  160595.,  162012.,  163429.,
      164846.,  166263.,  167680.,  169097.,  170514.,  171931.,  173348.,
      182077.,  183750.,  185423.,  187096.,  188769.,  190442.,  192115.,
      193788.,  195461.,  197134.,  198807.,  200480.,  202153.,  203826.,
      209227.,  211156.,  213085.,  215014.,  216943.,  218872.,  220801.,
      222730.,  224659.,  226588.,  228517.,  230446.,  232375.,  234304.,
      236377.,  238562.,  240747.,  242932.,  245117.,  247302.,  249487.,
      251672.,  253857.,  256042.,  258227.,  260412.,  262597.,  264782.,
      263527.,  265968.,  268409.,  270850.,  273291.,  275732.,  278173.,
      280614.,  283055.,  285496.,  287937.,  290378.,  292819.,  295260.,
      290677.,  293374.,  296071.,  298768.,  301465.,  304162.,  306859.,
      309556.,  312253.,  314950.,  317647.,  320344.,  323041.,  325738.,
      317827.,  320780.,  323733.,  326686.,  329639.,  332592.,  335545.,
      338498.,  341451.,  344404.,  347357.,  350310.,  353263.,  356216.,
      344977.,  348186.,  351395.,  354604.,  357813.,  361022.,  364231.,
      367440.,  370649.,  373858.,  377067.,  380276.,  383485.,  386694.,
      372127.,  375592.,  379057.,  382522.,  385987.,  389452.,  392917.,
      396382.,  399847.,  403312.,  406777.,  410242.,  413707.,  417172.,
      399277.,  402998.,  406719.,  410440.,  414161.,  417882.,  421603.,
      425324.,  429045.,  432766.,  436487.,  440208.,  443929.,  447650.,
      1317051., 1321028., 1325005., 1328982., 1332959., 1336936., 1340913.,
      1344890., 1348867., 1352844., 1356821., 1360798., 1364775., 1368752.,
      1401545., 1405778., 1410011., 1414244., 1418477., 1422710., 1426943.,
      1431176., 1435409., 1439642., 1443875., 1448108., 1452341., 1456574.,
      1486039., 1490528., 1495017., 1499506., 1503995., 1508484., 1512973.,
      1517462., 1521951., 1526440., 1530929., 1535418., 1539907., 1544396.,
      1570533., 1575278., 1580023., 1584768., 1589513., 1594258., 1599003.,
      1603748., 1608493., 1613238., 1617983., 1622728., 1627473., 1632218.,
      1655027., 1660028., 1665029., 1670030., 1675031., 1680032., 1685033.,
      1690034., 1695035., 1700036., 1705037., 1710038., 1715039., 1720040.,
      1739521., 1744778., 1750035., 1755292., 1760549., 1765806., 1771063.,
      1776320., 1781577., 1786834., 1792091., 1797348., 1802605., 1807862.,
      1824015., 1829528., 1835041., 1840554., 1846067., 1851580., 1857093.,
      1862606., 1868119., 1873632., 1879145., 1884658., 1890171., 1895684.,
      1908509., 1914278., 1920047., 1925816., 1931585., 1937354., 1943123.,
      1948892., 1954661., 1960430., 1966199., 1971968., 1977737., 1983506.,
      1993003., 1999028., 2005053., 2011078., 2017103., 2023128., 2029153.,
      2035178., 2041203., 2047228., 2053253., 2059278., 2065303., 2071328.,
      2077497., 2083778., 2090059., 2096340., 2102621., 2108902., 2115183.,
      2121464., 2127745., 2134026., 2140307., 2146588., 2152869., 2159150.,
      2161991., 2168528., 2175065., 2181602., 2188139., 2194676., 2201213.,
      2207750., 2214287., 2220824., 2227361., 2233898., 2240435., 2246972.,
      2246485., 2253278., 2260071., 2266864., 2273657., 2280450., 2287243.,
      2294036., 2300829., 2307622., 2314415., 2321208., 2328001., 2334794.,
      2330979., 2338028., 2345077., 2352126., 2359175., 2366224., 2373273.,
      2380322., 2387371., 2394420., 2401469., 2408518., 2415567., 2422616.,
      2415473., 2422778., 2430083., 2437388., 2444693., 2451998., 2459303.,
      2466608., 2473913., 2481218., 2488523., 2495828., 2503133., 2510438.,
      2499967., 2507528., 2515089., 2522650., 2530211., 2537772., 2545333.,
      2552894., 2560455., 2568016., 2575577., 2583138., 2590699., 2598260.,
      4335245., 4343062., 4350879., 4358696., 4366513., 4374330., 4382147.,
      4389964., 4397781., 4405598., 4413415., 4421232., 4429049., 4436866.,
      4477083., 4485156., 4493229., 4501302., 4509375., 4517448., 4525521.,
      4533594., 4541667., 4549740., 4557813., 4565886., 4573959., 4582032.,
      4618921., 4627250., 4635579., 4643908., 4652237., 4660566., 4668895.,
      4677224., 4685553., 4693882., 4702211., 4710540., 4718869., 4727198.,
      4760759., 4769344., 4777929., 4786514., 4795099., 4803684., 4812269.,
      4820854., 4829439., 4838024., 4846609., 4855194., 4863779., 4872364.,
      4902597., 4911438., 4920279., 4929120., 4937961., 4946802., 4955643.,
      4964484., 4973325., 4982166., 4991007., 4999848., 5008689., 5017530.,
      5044435., 5053532., 5062629., 5071726., 5080823., 5089920., 5099017.,
      5108114., 5117211., 5126308., 5135405., 5144502., 5153599., 5162696.,
      5186273., 5195626., 5204979., 5214332., 5223685., 5233038., 5242391.,
      5251744., 5261097., 5270450., 5279803., 5289156., 5298509., 5307862.,
      5328111., 5337720., 5347329., 5356938., 5366547., 5376156., 5385765.,
      5395374., 5404983., 5414592., 5424201., 5433810., 5443419., 5453028.,
      5469949., 5479814., 5489679., 5499544., 5509409., 5519274., 5529139.,
      5539004., 5548869., 5558734., 5568599., 5578464., 5588329., 5598194.,
      5611787., 5621908., 5632029., 5642150., 5652271., 5662392., 5672513.,
      5682634., 5692755., 5702876., 5712997., 5723118., 5733239., 5743360.,
      5753625., 5764002., 5774379., 5784756., 5795133., 5805510., 5815887.,
      5826264., 5836641., 5847018., 5857395., 5867772., 5878149., 5888526.,
      5895463., 5906096., 5916729., 5927362., 5937995., 5948628., 5959261.,
      5969894., 5980527., 5991160., 6001793., 6012426., 6023059., 6033692.,
      6037301., 6048190., 6059079., 6069968., 6080857., 6091746., 6102635.,
      6113524., 6124413., 6135302., 6146191., 6157080., 6167969., 6178858.,
      6179139., 6190284., 6201429., 6212574., 6223719., 6234864., 6246009.,
      6257154., 6268299., 6279444., 6290589., 6301734., 6312879., 6324024.,
      6320977., 6332378., 6343779., 6355180., 6366581., 6377982., 6389383.,
      6400784., 6412185., 6423586., 6434987., 6446388., 6457789., 6469190.};
  const int batches = 3;
  const int m = 15;
  const int k = 16;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK16xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      20537.,   20674.,   20811.,   20948.,   21085.,   21222.,   21359.,
      21496.,   21633.,   21770.,   21907.,   22044.,   22181.,   22318.,
      22455.,   49608.,   50001.,   50394.,   50787.,   51180.,   51573.,
      51966.,   52359.,   52752.,   53145.,   53538.,   53931.,   54324.,
      54717.,   55110.,   78679.,   79328.,   79977.,   80626.,   81275.,
      81924.,   82573.,   83222.,   83871.,   84520.,   85169.,   85818.,
      86467.,   87116.,   87765.,   107750.,  108655.,  109560.,  110465.,
      111370.,  112275.,  113180.,  114085.,  114990.,  115895.,  116800.,
      117705.,  118610.,  119515.,  120420.,  136821.,  137982.,  139143.,
      140304.,  141465.,  142626.,  143787.,  144948.,  146109.,  147270.,
      148431.,  149592.,  150753.,  151914.,  153075.,  165892.,  167309.,
      168726.,  170143.,  171560.,  172977.,  174394.,  175811.,  177228.,
      178645.,  180062.,  181479.,  182896.,  184313.,  185730.,  194963.,
      196636.,  198309.,  199982.,  201655.,  203328.,  205001.,  206674.,
      208347.,  210020.,  211693.,  213366.,  215039.,  216712.,  218385.,
      224034.,  225963.,  227892.,  229821.,  231750.,  233679.,  235608.,
      237537.,  239466.,  241395.,  243324.,  245253.,  247182.,  249111.,
      251040.,  253105.,  255290.,  257475.,  259660.,  261845.,  264030.,
      266215.,  268400.,  270585.,  272770.,  274955.,  277140.,  279325.,
      281510.,  283695.,  282176.,  284617.,  287058.,  289499.,  291940.,
      294381.,  296822.,  299263.,  301704.,  304145.,  306586.,  309027.,
      311468.,  313909.,  316350.,  311247.,  313944.,  316641.,  319338.,
      322035.,  324732.,  327429.,  330126.,  332823.,  335520.,  338217.,
      340914.,  343611.,  346308.,  349005.,  340318.,  343271.,  346224.,
      349177.,  352130.,  355083.,  358036.,  360989.,  363942.,  366895.,
      369848.,  372801.,  375754.,  378707.,  381660.,  369389.,  372598.,
      375807.,  379016.,  382225.,  385434.,  388643.,  391852.,  395061.,
      398270.,  401479.,  404688.,  407897.,  411106.,  414315.,  398460.,
      401925.,  405390.,  408855.,  412320.,  415785.,  419250.,  422715.,
      426180.,  429645.,  433110.,  436575.,  440040.,  443505.,  446970.,
      427531.,  431252.,  434973.,  438694.,  442415.,  446136.,  449857.,
      453578.,  457299.,  461020.,  464741.,  468462.,  472183.,  475904.,
      479625.,  1410842., 1414819., 1418796., 1422773., 1426750., 1430727.,
      1434704., 1438681., 1442658., 1446635., 1450612., 1454589., 1458566.,
      1462543., 1466520., 1501353., 1505586., 1509819., 1514052., 1518285.,
      1522518., 1526751., 1530984., 1535217., 1539450., 1543683., 1547916.,
      1552149., 1556382., 1560615., 1591864., 1596353., 1600842., 1605331.,
      1609820., 1614309., 1618798., 1623287., 1627776., 1632265., 1636754.,
      1641243., 1645732., 1650221., 1654710., 1682375., 1687120., 1691865.,
      1696610., 1701355., 1706100., 1710845., 1715590., 1720335., 1725080.,
      1729825., 1734570., 1739315., 1744060., 1748805., 1772886., 1777887.,
      1782888., 1787889., 1792890., 1797891., 1802892., 1807893., 1812894.,
      1817895., 1822896., 1827897., 1832898., 1837899., 1842900., 1863397.,
      1868654., 1873911., 1879168., 1884425., 1889682., 1894939., 1900196.,
      1905453., 1910710., 1915967., 1921224., 1926481., 1931738., 1936995.,
      1953908., 1959421., 1964934., 1970447., 1975960., 1981473., 1986986.,
      1992499., 1998012., 2003525., 2009038., 2014551., 2020064., 2025577.,
      2031090., 2044419., 2050188., 2055957., 2061726., 2067495., 2073264.,
      2079033., 2084802., 2090571., 2096340., 2102109., 2107878., 2113647.,
      2119416., 2125185., 2134930., 2140955., 2146980., 2153005., 2159030.,
      2165055., 2171080., 2177105., 2183130., 2189155., 2195180., 2201205.,
      2207230., 2213255., 2219280., 2225441., 2231722., 2238003., 2244284.,
      2250565., 2256846., 2263127., 2269408., 2275689., 2281970., 2288251.,
      2294532., 2300813., 2307094., 2313375., 2315952., 2322489., 2329026.,
      2335563., 2342100., 2348637., 2355174., 2361711., 2368248., 2374785.,
      2381322., 2387859., 2394396., 2400933., 2407470., 2406463., 2413256.,
      2420049., 2426842., 2433635., 2440428., 2447221., 2454014., 2460807.,
      2467600., 2474393., 2481186., 2487979., 2494772., 2501565., 2496974.,
      2504023., 2511072., 2518121., 2525170., 2532219., 2539268., 2546317.,
      2553366., 2560415., 2567464., 2574513., 2581562., 2588611., 2595660.,
      2587485., 2594790., 2602095., 2609400., 2616705., 2624010., 2631315.,
      2638620., 2645925., 2653230., 2660535., 2667840., 2675145., 2682450.,
      2689755., 2677996., 2685557., 2693118., 2700679., 2708240., 2715801.,
      2723362., 2730923., 2738484., 2746045., 2753606., 2761167., 2768728.,
      2776289., 2783850., 4644347., 4652164., 4659981., 4667798., 4675615.,
      4683432., 4691249., 4699066., 4706883., 4714700., 4722517., 4730334.,
      4738151., 4745968., 4753785., 4796298., 4804371., 4812444., 4820517.,
      4828590., 4836663., 4844736., 4852809., 4860882., 4868955., 4877028.,
      4885101., 4893174., 4901247., 4909320., 4948249., 4956578., 4964907.,
      4973236., 4981565., 4989894., 4998223., 5006552., 5014881., 5023210.,
      5031539., 5039868., 5048197., 5056526., 5064855., 5100200., 5108785.,
      5117370., 5125955., 5134540., 5143125., 5151710., 5160295., 5168880.,
      5177465., 5186050., 5194635., 5203220., 5211805., 5220390., 5252151.,
      5260992., 5269833., 5278674., 5287515., 5296356., 5305197., 5314038.,
      5322879., 5331720., 5340561., 5349402., 5358243., 5367084., 5375925.,
      5404102., 5413199., 5422296., 5431393., 5440490., 5449587., 5458684.,
      5467781., 5476878., 5485975., 5495072., 5504169., 5513266., 5522363.,
      5531460., 5556053., 5565406., 5574759., 5584112., 5593465., 5602818.,
      5612171., 5621524., 5630877., 5640230., 5649583., 5658936., 5668289.,
      5677642., 5686995., 5708004., 5717613., 5727222., 5736831., 5746440.,
      5756049., 5765658., 5775267., 5784876., 5794485., 5804094., 5813703.,
      5823312., 5832921., 5842530., 5859955., 5869820., 5879685., 5889550.,
      5899415., 5909280., 5919145., 5929010., 5938875., 5948740., 5958605.,
      5968470., 5978335., 5988200., 5998065., 6011906., 6022027., 6032148.,
      6042269., 6052390., 6062511., 6072632., 6082753., 6092874., 6102995.,
      6113116., 6123237., 6133358., 6143479., 6153600., 6163857., 6174234.,
      6184611., 6194988., 6205365., 6215742., 6226119., 6236496., 6246873.,
      6257250., 6267627., 6278004., 6288381., 6298758., 6309135., 6315808.,
      6326441., 6337074., 6347707., 6358340., 6368973., 6379606., 6390239.,
      6400872., 6411505., 6422138., 6432771., 6443404., 6454037., 6464670.,
      6467759., 6478648., 6489537., 6500426., 6511315., 6522204., 6533093.,
      6543982., 6554871., 6565760., 6576649., 6587538., 6598427., 6609316.,
      6620205., 6619710., 6630855., 6642000., 6653145., 6664290., 6675435.,
      6686580., 6697725., 6708870., 6720015., 6731160., 6742305., 6753450.,
      6764595., 6775740., 6771661., 6783062., 6794463., 6805864., 6817265.,
      6828666., 6840067., 6851468., 6862869., 6874270., 6885671., 6897072.,
      6908473., 6919874., 6931275.};
  const int batches = 3;
  const int m = 15;
  const int k = 16;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M15xK16xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      21897.,   22034.,   22171.,   22308.,   22445.,   22582.,   22719.,
      22856.,   22993.,   23130.,   23267.,   23404.,   23541.,   23678.,
      23815.,   23952.,   52889.,   53282.,   53675.,   54068.,   54461.,
      54854.,   55247.,   55640.,   56033.,   56426.,   56819.,   57212.,
      57605.,   57998.,   58391.,   58784.,   83881.,   84530.,   85179.,
      85828.,   86477.,   87126.,   87775.,   88424.,   89073.,   89722.,
      90371.,   91020.,   91669.,   92318.,   92967.,   93616.,   114873.,
      115778.,  116683.,  117588.,  118493.,  119398.,  120303.,  121208.,
      122113.,  123018.,  123923.,  124828.,  125733.,  126638.,  127543.,
      128448.,  145865.,  147026.,  148187.,  149348.,  150509.,  151670.,
      152831.,  153992.,  155153.,  156314.,  157475.,  158636.,  159797.,
      160958.,  162119.,  163280.,  176857.,  178274.,  179691.,  181108.,
      182525.,  183942.,  185359.,  186776.,  188193.,  189610.,  191027.,
      192444.,  193861.,  195278.,  196695.,  198112.,  207849.,  209522.,
      211195.,  212868.,  214541.,  216214.,  217887.,  219560.,  221233.,
      222906.,  224579.,  226252.,  227925.,  229598.,  231271.,  232944.,
      238841.,  240770.,  242699.,  244628.,  246557.,  248486.,  250415.,
      252344.,  254273.,  256202.,  258131.,  260060.,  261989.,  263918.,
      265847.,  267776.,  269833.,  272018.,  274203.,  276388.,  278573.,
      280758.,  282943.,  285128.,  287313.,  289498.,  291683.,  293868.,
      296053.,  298238.,  300423.,  302608.,  300825.,  303266.,  305707.,
      308148.,  310589.,  313030.,  315471.,  317912.,  320353.,  322794.,
      325235.,  327676.,  330117.,  332558.,  334999.,  337440.,  331817.,
      334514.,  337211.,  339908.,  342605.,  345302.,  347999.,  350696.,
      353393.,  356090.,  358787.,  361484.,  364181.,  366878.,  369575.,
      372272.,  362809.,  365762.,  368715.,  371668.,  374621.,  377574.,
      380527.,  383480.,  386433.,  389386.,  392339.,  395292.,  398245.,
      401198.,  404151.,  407104.,  393801.,  397010.,  400219.,  403428.,
      406637.,  409846.,  413055.,  416264.,  419473.,  422682.,  425891.,
      429100.,  432309.,  435518.,  438727.,  441936.,  424793.,  428258.,
      431723.,  435188.,  438653.,  442118.,  445583.,  449048.,  452513.,
      455978.,  459443.,  462908.,  466373.,  469838.,  473303.,  476768.,
      455785.,  459506.,  463227.,  466948.,  470669.,  474390.,  478111.,
      481832.,  485553.,  489274.,  492995.,  496716.,  500437.,  504158.,
      507879.,  511600.,  1504633., 1508610., 1512587., 1516564., 1520541.,
      1524518., 1528495., 1532472., 1536449., 1540426., 1544403., 1548380.,
      1552357., 1556334., 1560311., 1564288., 1601161., 1605394., 1609627.,
      1613860., 1618093., 1622326., 1626559., 1630792., 1635025., 1639258.,
      1643491., 1647724., 1651957., 1656190., 1660423., 1664656., 1697689.,
      1702178., 1706667., 1711156., 1715645., 1720134., 1724623., 1729112.,
      1733601., 1738090., 1742579., 1747068., 1751557., 1756046., 1760535.,
      1765024., 1794217., 1798962., 1803707., 1808452., 1813197., 1817942.,
      1822687., 1827432., 1832177., 1836922., 1841667., 1846412., 1851157.,
      1855902., 1860647., 1865392., 1890745., 1895746., 1900747., 1905748.,
      1910749., 1915750., 1920751., 1925752., 1930753., 1935754., 1940755.,
      1945756., 1950757., 1955758., 1960759., 1965760., 1987273., 1992530.,
      1997787., 2003044., 2008301., 2013558., 2018815., 2024072., 2029329.,
      2034586., 2039843., 2045100., 2050357., 2055614., 2060871., 2066128.,
      2083801., 2089314., 2094827., 2100340., 2105853., 2111366., 2116879.,
      2122392., 2127905., 2133418., 2138931., 2144444., 2149957., 2155470.,
      2160983., 2166496., 2180329., 2186098., 2191867., 2197636., 2203405.,
      2209174., 2214943., 2220712., 2226481., 2232250., 2238019., 2243788.,
      2249557., 2255326., 2261095., 2266864., 2276857., 2282882., 2288907.,
      2294932., 2300957., 2306982., 2313007., 2319032., 2325057., 2331082.,
      2337107., 2343132., 2349157., 2355182., 2361207., 2367232., 2373385.,
      2379666., 2385947., 2392228., 2398509., 2404790., 2411071., 2417352.,
      2423633., 2429914., 2436195., 2442476., 2448757., 2455038., 2461319.,
      2467600., 2469913., 2476450., 2482987., 2489524., 2496061., 2502598.,
      2509135., 2515672., 2522209., 2528746., 2535283., 2541820., 2548357.,
      2554894., 2561431., 2567968., 2566441., 2573234., 2580027., 2586820.,
      2593613., 2600406., 2607199., 2613992., 2620785., 2627578., 2634371.,
      2641164., 2647957., 2654750., 2661543., 2668336., 2662969., 2670018.,
      2677067., 2684116., 2691165., 2698214., 2705263., 2712312., 2719361.,
      2726410., 2733459., 2740508., 2747557., 2754606., 2761655., 2768704.,
      2759497., 2766802., 2774107., 2781412., 2788717., 2796022., 2803327.,
      2810632., 2817937., 2825242., 2832547., 2839852., 2847157., 2854462.,
      2861767., 2869072., 2856025., 2863586., 2871147., 2878708., 2886269.,
      2893830., 2901391., 2908952., 2916513., 2924074., 2931635., 2939196.,
      2946757., 2954318., 2961879., 2969440., 4953449., 4961266., 4969083.,
      4976900., 4984717., 4992534., 5000351., 5008168., 5015985., 5023802.,
      5031619., 5039436., 5047253., 5055070., 5062887., 5070704., 5115513.,
      5123586., 5131659., 5139732., 5147805., 5155878., 5163951., 5172024.,
      5180097., 5188170., 5196243., 5204316., 5212389., 5220462., 5228535.,
      5236608., 5277577., 5285906., 5294235., 5302564., 5310893., 5319222.,
      5327551., 5335880., 5344209., 5352538., 5360867., 5369196., 5377525.,
      5385854., 5394183., 5402512., 5439641., 5448226., 5456811., 5465396.,
      5473981., 5482566., 5491151., 5499736., 5508321., 5516906., 5525491.,
      5534076., 5542661., 5551246., 5559831., 5568416., 5601705., 5610546.,
      5619387., 5628228., 5637069., 5645910., 5654751., 5663592., 5672433.,
      5681274., 5690115., 5698956., 5707797., 5716638., 5725479., 5734320.,
      5763769., 5772866., 5781963., 5791060., 5800157., 5809254., 5818351.,
      5827448., 5836545., 5845642., 5854739., 5863836., 5872933., 5882030.,
      5891127., 5900224., 5925833., 5935186., 5944539., 5953892., 5963245.,
      5972598., 5981951., 5991304., 6000657., 6010010., 6019363., 6028716.,
      6038069., 6047422., 6056775., 6066128., 6087897., 6097506., 6107115.,
      6116724., 6126333., 6135942., 6145551., 6155160., 6164769., 6174378.,
      6183987., 6193596., 6203205., 6212814., 6222423., 6232032., 6249961.,
      6259826., 6269691., 6279556., 6289421., 6299286., 6309151., 6319016.,
      6328881., 6338746., 6348611., 6358476., 6368341., 6378206., 6388071.,
      6397936., 6412025., 6422146., 6432267., 6442388., 6452509., 6462630.,
      6472751., 6482872., 6492993., 6503114., 6513235., 6523356., 6533477.,
      6543598., 6553719., 6563840., 6574089., 6584466., 6594843., 6605220.,
      6615597., 6625974., 6636351., 6646728., 6657105., 6667482., 6677859.,
      6688236., 6698613., 6708990., 6719367., 6729744., 6736153., 6746786.,
      6757419., 6768052., 6778685., 6789318., 6799951., 6810584., 6821217.,
      6831850., 6842483., 6853116., 6863749., 6874382., 6885015., 6895648.,
      6898217., 6909106., 6919995., 6930884., 6941773., 6952662., 6963551.,
      6974440., 6985329., 6996218., 7007107., 7017996., 7028885., 7039774.,
      7050663., 7061552., 7060281., 7071426., 7082571., 7093716., 7104861.,
      7116006., 7127151., 7138296., 7149441., 7160586., 7171731., 7182876.,
      7194021., 7205166., 7216311., 7227456., 7222345., 7233746., 7245147.,
      7256548., 7267949., 7279350., 7290751., 7302152., 7313553., 7324954.,
      7336355., 7347756., 7359157., 7370558., 7381959., 7393360.};
  const int batches = 3;
  const int m = 15;
  const int k = 16;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK14xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      12846.,   12952.,   13058.,   13164.,   13270.,   13376.,   13482.,
      13588.,   13694.,   13800.,   13906.,   14012.,   14118.,   14224.,
      30892.,   31194.,   31496.,   31798.,   32100.,   32402.,   32704.,
      33006.,   33308.,   33610.,   33912.,   34214.,   34516.,   34818.,
      48938.,   49436.,   49934.,   50432.,   50930.,   51428.,   51926.,
      52424.,   52922.,   53420.,   53918.,   54416.,   54914.,   55412.,
      66984.,   67678.,   68372.,   69066.,   69760.,   70454.,   71148.,
      71842.,   72536.,   73230.,   73924.,   74618.,   75312.,   76006.,
      85030.,   85920.,   86810.,   87700.,   88590.,   89480.,   90370.,
      91260.,   92150.,   93040.,   93930.,   94820.,   95710.,   96600.,
      103076.,  104162.,  105248.,  106334.,  107420.,  108506.,  109592.,
      110678.,  111764.,  112850.,  113936.,  115022.,  116108.,  117194.,
      121122.,  122404.,  123686.,  124968.,  126250.,  127532.,  128814.,
      130096.,  131378.,  132660.,  133942.,  135224.,  136506.,  137788.,
      139168.,  140646.,  142124.,  143602.,  145080.,  146558.,  148036.,
      149514.,  150992.,  152470.,  153948.,  155426.,  156904.,  158382.,
      157214.,  158888.,  160562.,  162236.,  163910.,  165584.,  167258.,
      168932.,  170606.,  172280.,  173954.,  175628.,  177302.,  178976.,
      175260.,  177130.,  179000.,  180870.,  182740.,  184610.,  186480.,
      188350.,  190220.,  192090.,  193960.,  195830.,  197700.,  199570.,
      193306.,  195372.,  197438.,  199504.,  201570.,  203636.,  205702.,
      207768.,  209834.,  211900.,  213966.,  216032.,  218098.,  220164.,
      211352.,  213614.,  215876.,  218138.,  220400.,  222662.,  224924.,
      227186.,  229448.,  231710.,  233972.,  236234.,  238496.,  240758.,
      229398.,  231856.,  234314.,  236772.,  239230.,  241688.,  244146.,
      246604.,  249062.,  251520.,  253978.,  256436.,  258894.,  261352.,
      247444.,  250098.,  252752.,  255406.,  258060.,  260714.,  263368.,
      266022.,  268676.,  271330.,  273984.,  276638.,  279292.,  281946.,
      265490.,  268340.,  271190.,  274040.,  276890.,  279740.,  282590.,
      285440.,  288290.,  291140.,  293990.,  296840.,  299690.,  302540.,
      283536.,  286582.,  289628.,  292674.,  295720.,  298766.,  301812.,
      304858.,  307904.,  310950.,  313996.,  317042.,  320088.,  323134.,
      936818.,  940060.,  943302.,  946544.,  949786.,  953028.,  956270.,
      959512.,  962754.,  965996.,  969238.,  972480.,  975722.,  978964.,
      993280.,  996718.,  1000156., 1003594., 1007032., 1010470., 1013908.,
      1017346., 1020784., 1024222., 1027660., 1031098., 1034536., 1037974.,
      1049742., 1053376., 1057010., 1060644., 1064278., 1067912., 1071546.,
      1075180., 1078814., 1082448., 1086082., 1089716., 1093350., 1096984.,
      1106204., 1110034., 1113864., 1117694., 1121524., 1125354., 1129184.,
      1133014., 1136844., 1140674., 1144504., 1148334., 1152164., 1155994.,
      1162666., 1166692., 1170718., 1174744., 1178770., 1182796., 1186822.,
      1190848., 1194874., 1198900., 1202926., 1206952., 1210978., 1215004.,
      1219128., 1223350., 1227572., 1231794., 1236016., 1240238., 1244460.,
      1248682., 1252904., 1257126., 1261348., 1265570., 1269792., 1274014.,
      1275590., 1280008., 1284426., 1288844., 1293262., 1297680., 1302098.,
      1306516., 1310934., 1315352., 1319770., 1324188., 1328606., 1333024.,
      1332052., 1336666., 1341280., 1345894., 1350508., 1355122., 1359736.,
      1364350., 1368964., 1373578., 1378192., 1382806., 1387420., 1392034.,
      1388514., 1393324., 1398134., 1402944., 1407754., 1412564., 1417374.,
      1422184., 1426994., 1431804., 1436614., 1441424., 1446234., 1451044.,
      1444976., 1449982., 1454988., 1459994., 1465000., 1470006., 1475012.,
      1480018., 1485024., 1490030., 1495036., 1500042., 1505048., 1510054.,
      1501438., 1506640., 1511842., 1517044., 1522246., 1527448., 1532650.,
      1537852., 1543054., 1548256., 1553458., 1558660., 1563862., 1569064.,
      1557900., 1563298., 1568696., 1574094., 1579492., 1584890., 1590288.,
      1595686., 1601084., 1606482., 1611880., 1617278., 1622676., 1628074.,
      1614362., 1619956., 1625550., 1631144., 1636738., 1642332., 1647926.,
      1653520., 1659114., 1664708., 1670302., 1675896., 1681490., 1687084.,
      1670824., 1676614., 1682404., 1688194., 1693984., 1699774., 1705564.,
      1711354., 1717144., 1722934., 1728724., 1734514., 1740304., 1746094.,
      1727286., 1733272., 1739258., 1745244., 1751230., 1757216., 1763202.,
      1769188., 1775174., 1781160., 1787146., 1793132., 1799118., 1805104.,
      1783748., 1789930., 1796112., 1802294., 1808476., 1814658., 1820840.,
      1827022., 1833204., 1839386., 1845568., 1851750., 1857932., 1864114.,
      3090102., 3096480., 3102858., 3109236., 3115614., 3121992., 3128370.,
      3134748., 3141126., 3147504., 3153882., 3160260., 3166638., 3173016.,
      3184980., 3191554., 3198128., 3204702., 3211276., 3217850., 3224424.,
      3230998., 3237572., 3244146., 3250720., 3257294., 3263868., 3270442.,
      3279858., 3286628., 3293398., 3300168., 3306938., 3313708., 3320478.,
      3327248., 3334018., 3340788., 3347558., 3354328., 3361098., 3367868.,
      3374736., 3381702., 3388668., 3395634., 3402600., 3409566., 3416532.,
      3423498., 3430464., 3437430., 3444396., 3451362., 3458328., 3465294.,
      3469614., 3476776., 3483938., 3491100., 3498262., 3505424., 3512586.,
      3519748., 3526910., 3534072., 3541234., 3548396., 3555558., 3562720.,
      3564492., 3571850., 3579208., 3586566., 3593924., 3601282., 3608640.,
      3615998., 3623356., 3630714., 3638072., 3645430., 3652788., 3660146.,
      3659370., 3666924., 3674478., 3682032., 3689586., 3697140., 3704694.,
      3712248., 3719802., 3727356., 3734910., 3742464., 3750018., 3757572.,
      3754248., 3761998., 3769748., 3777498., 3785248., 3792998., 3800748.,
      3808498., 3816248., 3823998., 3831748., 3839498., 3847248., 3854998.,
      3849126., 3857072., 3865018., 3872964., 3880910., 3888856., 3896802.,
      3904748., 3912694., 3920640., 3928586., 3936532., 3944478., 3952424.,
      3944004., 3952146., 3960288., 3968430., 3976572., 3984714., 3992856.,
      4000998., 4009140., 4017282., 4025424., 4033566., 4041708., 4049850.,
      4038882., 4047220., 4055558., 4063896., 4072234., 4080572., 4088910.,
      4097248., 4105586., 4113924., 4122262., 4130600., 4138938., 4147276.,
      4133760., 4142294., 4150828., 4159362., 4167896., 4176430., 4184964.,
      4193498., 4202032., 4210566., 4219100., 4227634., 4236168., 4244702.,
      4228638., 4237368., 4246098., 4254828., 4263558., 4272288., 4281018.,
      4289748., 4298478., 4307208., 4315938., 4324668., 4333398., 4342128.,
      4323516., 4332442., 4341368., 4350294., 4359220., 4368146., 4377072.,
      4385998., 4394924., 4403850., 4412776., 4421702., 4430628., 4439554.,
      4418394., 4427516., 4436638., 4445760., 4454882., 4464004., 4473126.,
      4482248., 4491370., 4500492., 4509614., 4518736., 4527858., 4536980.,
      4513272., 4522590., 4531908., 4541226., 4550544., 4559862., 4569180.,
      4578498., 4587816., 4597134., 4606452., 4615770., 4625088., 4634406.};
  const int batches = 3;
  const int m = 16;
  const int k = 14;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK14xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      13756.,   13862.,   13968.,   14074.,   14180.,   14286.,   14392.,
      14498.,   14604.,   14710.,   14816.,   14922.,   15028.,   15134.,
      15240.,   33077.,   33379.,   33681.,   33983.,   34285.,   34587.,
      34889.,   35191.,   35493.,   35795.,   36097.,   36399.,   36701.,
      37003.,   37305.,   52398.,   52896.,   53394.,   53892.,   54390.,
      54888.,   55386.,   55884.,   56382.,   56880.,   57378.,   57876.,
      58374.,   58872.,   59370.,   71719.,   72413.,   73107.,   73801.,
      74495.,   75189.,   75883.,   76577.,   77271.,   77965.,   78659.,
      79353.,   80047.,   80741.,   81435.,   91040.,   91930.,   92820.,
      93710.,   94600.,   95490.,   96380.,   97270.,   98160.,   99050.,
      99940.,   100830.,  101720.,  102610.,  103500.,  110361.,  111447.,
      112533.,  113619.,  114705.,  115791.,  116877.,  117963.,  119049.,
      120135.,  121221.,  122307.,  123393.,  124479.,  125565.,  129682.,
      130964.,  132246.,  133528.,  134810.,  136092.,  137374.,  138656.,
      139938.,  141220.,  142502.,  143784.,  145066.,  146348.,  147630.,
      149003.,  150481.,  151959.,  153437.,  154915.,  156393.,  157871.,
      159349.,  160827.,  162305.,  163783.,  165261.,  166739.,  168217.,
      169695.,  168324.,  169998.,  171672.,  173346.,  175020.,  176694.,
      178368.,  180042.,  181716.,  183390.,  185064.,  186738.,  188412.,
      190086.,  191760.,  187645.,  189515.,  191385.,  193255.,  195125.,
      196995.,  198865.,  200735.,  202605.,  204475.,  206345.,  208215.,
      210085.,  211955.,  213825.,  206966.,  209032.,  211098.,  213164.,
      215230.,  217296.,  219362.,  221428.,  223494.,  225560.,  227626.,
      229692.,  231758.,  233824.,  235890.,  226287.,  228549.,  230811.,
      233073.,  235335.,  237597.,  239859.,  242121.,  244383.,  246645.,
      248907.,  251169.,  253431.,  255693.,  257955.,  245608.,  248066.,
      250524.,  252982.,  255440.,  257898.,  260356.,  262814.,  265272.,
      267730.,  270188.,  272646.,  275104.,  277562.,  280020.,  264929.,
      267583.,  270237.,  272891.,  275545.,  278199.,  280853.,  283507.,
      286161.,  288815.,  291469.,  294123.,  296777.,  299431.,  302085.,
      284250.,  287100.,  289950.,  292800.,  295650.,  298500.,  301350.,
      304200.,  307050.,  309900.,  312750.,  315600.,  318450.,  321300.,
      324150.,  303571.,  306617.,  309663.,  312709.,  315755.,  318801.,
      321847.,  324893.,  327939.,  330985.,  334031.,  337077.,  340123.,
      343169.,  346215.,  1003502., 1006744., 1009986., 1013228., 1016470.,
      1019712., 1022954., 1026196., 1029438., 1032680., 1035922., 1039164.,
      1042406., 1045648., 1048890., 1063983., 1067421., 1070859., 1074297.,
      1077735., 1081173., 1084611., 1088049., 1091487., 1094925., 1098363.,
      1101801., 1105239., 1108677., 1112115., 1124464., 1128098., 1131732.,
      1135366., 1139000., 1142634., 1146268., 1149902., 1153536., 1157170.,
      1160804., 1164438., 1168072., 1171706., 1175340., 1184945., 1188775.,
      1192605., 1196435., 1200265., 1204095., 1207925., 1211755., 1215585.,
      1219415., 1223245., 1227075., 1230905., 1234735., 1238565., 1245426.,
      1249452., 1253478., 1257504., 1261530., 1265556., 1269582., 1273608.,
      1277634., 1281660., 1285686., 1289712., 1293738., 1297764., 1301790.,
      1305907., 1310129., 1314351., 1318573., 1322795., 1327017., 1331239.,
      1335461., 1339683., 1343905., 1348127., 1352349., 1356571., 1360793.,
      1365015., 1366388., 1370806., 1375224., 1379642., 1384060., 1388478.,
      1392896., 1397314., 1401732., 1406150., 1410568., 1414986., 1419404.,
      1423822., 1428240., 1426869., 1431483., 1436097., 1440711., 1445325.,
      1449939., 1454553., 1459167., 1463781., 1468395., 1473009., 1477623.,
      1482237., 1486851., 1491465., 1487350., 1492160., 1496970., 1501780.,
      1506590., 1511400., 1516210., 1521020., 1525830., 1530640., 1535450.,
      1540260., 1545070., 1549880., 1554690., 1547831., 1552837., 1557843.,
      1562849., 1567855., 1572861., 1577867., 1582873., 1587879., 1592885.,
      1597891., 1602897., 1607903., 1612909., 1617915., 1608312., 1613514.,
      1618716., 1623918., 1629120., 1634322., 1639524., 1644726., 1649928.,
      1655130., 1660332., 1665534., 1670736., 1675938., 1681140., 1668793.,
      1674191., 1679589., 1684987., 1690385., 1695783., 1701181., 1706579.,
      1711977., 1717375., 1722773., 1728171., 1733569., 1738967., 1744365.,
      1729274., 1734868., 1740462., 1746056., 1751650., 1757244., 1762838.,
      1768432., 1774026., 1779620., 1785214., 1790808., 1796402., 1801996.,
      1807590., 1789755., 1795545., 1801335., 1807125., 1812915., 1818705.,
      1824495., 1830285., 1836075., 1841865., 1847655., 1853445., 1859235.,
      1865025., 1870815., 1850236., 1856222., 1862208., 1868194., 1874180.,
      1880166., 1886152., 1892138., 1898124., 1904110., 1910096., 1916082.,
      1922068., 1928054., 1934040., 1910717., 1916899., 1923081., 1929263.,
      1935445., 1941627., 1947809., 1953991., 1960173., 1966355., 1972537.,
      1978719., 1984901., 1991083., 1997265., 3310368., 3316746., 3323124.,
      3329502., 3335880., 3342258., 3348636., 3355014., 3361392., 3367770.,
      3374148., 3380526., 3386904., 3393282., 3399660., 3412009., 3418583.,
      3425157., 3431731., 3438305., 3444879., 3451453., 3458027., 3464601.,
      3471175., 3477749., 3484323., 3490897., 3497471., 3504045., 3513650.,
      3520420., 3527190., 3533960., 3540730., 3547500., 3554270., 3561040.,
      3567810., 3574580., 3581350., 3588120., 3594890., 3601660., 3608430.,
      3615291., 3622257., 3629223., 3636189., 3643155., 3650121., 3657087.,
      3664053., 3671019., 3677985., 3684951., 3691917., 3698883., 3705849.,
      3712815., 3716932., 3724094., 3731256., 3738418., 3745580., 3752742.,
      3759904., 3767066., 3774228., 3781390., 3788552., 3795714., 3802876.,
      3810038., 3817200., 3818573., 3825931., 3833289., 3840647., 3848005.,
      3855363., 3862721., 3870079., 3877437., 3884795., 3892153., 3899511.,
      3906869., 3914227., 3921585., 3920214., 3927768., 3935322., 3942876.,
      3950430., 3957984., 3965538., 3973092., 3980646., 3988200., 3995754.,
      4003308., 4010862., 4018416., 4025970., 4021855., 4029605., 4037355.,
      4045105., 4052855., 4060605., 4068355., 4076105., 4083855., 4091605.,
      4099355., 4107105., 4114855., 4122605., 4130355., 4123496., 4131442.,
      4139388., 4147334., 4155280., 4163226., 4171172., 4179118., 4187064.,
      4195010., 4202956., 4210902., 4218848., 4226794., 4234740., 4225137.,
      4233279., 4241421., 4249563., 4257705., 4265847., 4273989., 4282131.,
      4290273., 4298415., 4306557., 4314699., 4322841., 4330983., 4339125.,
      4326778., 4335116., 4343454., 4351792., 4360130., 4368468., 4376806.,
      4385144., 4393482., 4401820., 4410158., 4418496., 4426834., 4435172.,
      4443510., 4428419., 4436953., 4445487., 4454021., 4462555., 4471089.,
      4479623., 4488157., 4496691., 4505225., 4513759., 4522293., 4530827.,
      4539361., 4547895., 4530060., 4538790., 4547520., 4556250., 4564980.,
      4573710., 4582440., 4591170., 4599900., 4608630., 4617360., 4626090.,
      4634820., 4643550., 4652280., 4631701., 4640627., 4649553., 4658479.,
      4667405., 4676331., 4685257., 4694183., 4703109., 4712035., 4720961.,
      4729887., 4738813., 4747739., 4756665., 4733342., 4742464., 4751586.,
      4760708., 4769830., 4778952., 4788074., 4797196., 4806318., 4815440.,
      4824562., 4833684., 4842806., 4851928., 4861050., 4834983., 4844301.,
      4853619., 4862937., 4872255., 4881573., 4890891., 4900209., 4909527.,
      4918845., 4928163., 4937481., 4946799., 4956117., 4965435.};
  const int batches = 3;
  const int m = 16;
  const int k = 14;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK14xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      14666.,   14772.,   14878.,   14984.,   15090.,   15196.,   15302.,
      15408.,   15514.,   15620.,   15726.,   15832.,   15938.,   16044.,
      16150.,   16256.,   35262.,   35564.,   35866.,   36168.,   36470.,
      36772.,   37074.,   37376.,   37678.,   37980.,   38282.,   38584.,
      38886.,   39188.,   39490.,   39792.,   55858.,   56356.,   56854.,
      57352.,   57850.,   58348.,   58846.,   59344.,   59842.,   60340.,
      60838.,   61336.,   61834.,   62332.,   62830.,   63328.,   76454.,
      77148.,   77842.,   78536.,   79230.,   79924.,   80618.,   81312.,
      82006.,   82700.,   83394.,   84088.,   84782.,   85476.,   86170.,
      86864.,   97050.,   97940.,   98830.,   99720.,   100610.,  101500.,
      102390.,  103280.,  104170.,  105060.,  105950.,  106840.,  107730.,
      108620.,  109510.,  110400.,  117646.,  118732.,  119818.,  120904.,
      121990.,  123076.,  124162.,  125248.,  126334.,  127420.,  128506.,
      129592.,  130678.,  131764.,  132850.,  133936.,  138242.,  139524.,
      140806.,  142088.,  143370.,  144652.,  145934.,  147216.,  148498.,
      149780.,  151062.,  152344.,  153626.,  154908.,  156190.,  157472.,
      158838.,  160316.,  161794.,  163272.,  164750.,  166228.,  167706.,
      169184.,  170662.,  172140.,  173618.,  175096.,  176574.,  178052.,
      179530.,  181008.,  179434.,  181108.,  182782.,  184456.,  186130.,
      187804.,  189478.,  191152.,  192826.,  194500.,  196174.,  197848.,
      199522.,  201196.,  202870.,  204544.,  200030.,  201900.,  203770.,
      205640.,  207510.,  209380.,  211250.,  213120.,  214990.,  216860.,
      218730.,  220600.,  222470.,  224340.,  226210.,  228080.,  220626.,
      222692.,  224758.,  226824.,  228890.,  230956.,  233022.,  235088.,
      237154.,  239220.,  241286.,  243352.,  245418.,  247484.,  249550.,
      251616.,  241222.,  243484.,  245746.,  248008.,  250270.,  252532.,
      254794.,  257056.,  259318.,  261580.,  263842.,  266104.,  268366.,
      270628.,  272890.,  275152.,  261818.,  264276.,  266734.,  269192.,
      271650.,  274108.,  276566.,  279024.,  281482.,  283940.,  286398.,
      288856.,  291314.,  293772.,  296230.,  298688.,  282414.,  285068.,
      287722.,  290376.,  293030.,  295684.,  298338.,  300992.,  303646.,
      306300.,  308954.,  311608.,  314262.,  316916.,  319570.,  322224.,
      303010.,  305860.,  308710.,  311560.,  314410.,  317260.,  320110.,
      322960.,  325810.,  328660.,  331510.,  334360.,  337210.,  340060.,
      342910.,  345760.,  323606.,  326652.,  329698.,  332744.,  335790.,
      338836.,  341882.,  344928.,  347974.,  351020.,  354066.,  357112.,
      360158.,  363204.,  366250.,  369296.,  1070186., 1073428., 1076670.,
      1079912., 1083154., 1086396., 1089638., 1092880., 1096122., 1099364.,
      1102606., 1105848., 1109090., 1112332., 1115574., 1118816., 1134686.,
      1138124., 1141562., 1145000., 1148438., 1151876., 1155314., 1158752.,
      1162190., 1165628., 1169066., 1172504., 1175942., 1179380., 1182818.,
      1186256., 1199186., 1202820., 1206454., 1210088., 1213722., 1217356.,
      1220990., 1224624., 1228258., 1231892., 1235526., 1239160., 1242794.,
      1246428., 1250062., 1253696., 1263686., 1267516., 1271346., 1275176.,
      1279006., 1282836., 1286666., 1290496., 1294326., 1298156., 1301986.,
      1305816., 1309646., 1313476., 1317306., 1321136., 1328186., 1332212.,
      1336238., 1340264., 1344290., 1348316., 1352342., 1356368., 1360394.,
      1364420., 1368446., 1372472., 1376498., 1380524., 1384550., 1388576.,
      1392686., 1396908., 1401130., 1405352., 1409574., 1413796., 1418018.,
      1422240., 1426462., 1430684., 1434906., 1439128., 1443350., 1447572.,
      1451794., 1456016., 1457186., 1461604., 1466022., 1470440., 1474858.,
      1479276., 1483694., 1488112., 1492530., 1496948., 1501366., 1505784.,
      1510202., 1514620., 1519038., 1523456., 1521686., 1526300., 1530914.,
      1535528., 1540142., 1544756., 1549370., 1553984., 1558598., 1563212.,
      1567826., 1572440., 1577054., 1581668., 1586282., 1590896., 1586186.,
      1590996., 1595806., 1600616., 1605426., 1610236., 1615046., 1619856.,
      1624666., 1629476., 1634286., 1639096., 1643906., 1648716., 1653526.,
      1658336., 1650686., 1655692., 1660698., 1665704., 1670710., 1675716.,
      1680722., 1685728., 1690734., 1695740., 1700746., 1705752., 1710758.,
      1715764., 1720770., 1725776., 1715186., 1720388., 1725590., 1730792.,
      1735994., 1741196., 1746398., 1751600., 1756802., 1762004., 1767206.,
      1772408., 1777610., 1782812., 1788014., 1793216., 1779686., 1785084.,
      1790482., 1795880., 1801278., 1806676., 1812074., 1817472., 1822870.,
      1828268., 1833666., 1839064., 1844462., 1849860., 1855258., 1860656.,
      1844186., 1849780., 1855374., 1860968., 1866562., 1872156., 1877750.,
      1883344., 1888938., 1894532., 1900126., 1905720., 1911314., 1916908.,
      1922502., 1928096., 1908686., 1914476., 1920266., 1926056., 1931846.,
      1937636., 1943426., 1949216., 1955006., 1960796., 1966586., 1972376.,
      1978166., 1983956., 1989746., 1995536., 1973186., 1979172., 1985158.,
      1991144., 1997130., 2003116., 2009102., 2015088., 2021074., 2027060.,
      2033046., 2039032., 2045018., 2051004., 2056990., 2062976., 2037686.,
      2043868., 2050050., 2056232., 2062414., 2068596., 2074778., 2080960.,
      2087142., 2093324., 2099506., 2105688., 2111870., 2118052., 2124234.,
      2130416., 3530634., 3537012., 3543390., 3549768., 3556146., 3562524.,
      3568902., 3575280., 3581658., 3588036., 3594414., 3600792., 3607170.,
      3613548., 3619926., 3626304., 3639038., 3645612., 3652186., 3658760.,
      3665334., 3671908., 3678482., 3685056., 3691630., 3698204., 3704778.,
      3711352., 3717926., 3724500., 3731074., 3737648., 3747442., 3754212.,
      3760982., 3767752., 3774522., 3781292., 3788062., 3794832., 3801602.,
      3808372., 3815142., 3821912., 3828682., 3835452., 3842222., 3848992.,
      3855846., 3862812., 3869778., 3876744., 3883710., 3890676., 3897642.,
      3904608., 3911574., 3918540., 3925506., 3932472., 3939438., 3946404.,
      3953370., 3960336., 3964250., 3971412., 3978574., 3985736., 3992898.,
      4000060., 4007222., 4014384., 4021546., 4028708., 4035870., 4043032.,
      4050194., 4057356., 4064518., 4071680., 4072654., 4080012., 4087370.,
      4094728., 4102086., 4109444., 4116802., 4124160., 4131518., 4138876.,
      4146234., 4153592., 4160950., 4168308., 4175666., 4183024., 4181058.,
      4188612., 4196166., 4203720., 4211274., 4218828., 4226382., 4233936.,
      4241490., 4249044., 4256598., 4264152., 4271706., 4279260., 4286814.,
      4294368., 4289462., 4297212., 4304962., 4312712., 4320462., 4328212.,
      4335962., 4343712., 4351462., 4359212., 4366962., 4374712., 4382462.,
      4390212., 4397962., 4405712., 4397866., 4405812., 4413758., 4421704.,
      4429650., 4437596., 4445542., 4453488., 4461434., 4469380., 4477326.,
      4485272., 4493218., 4501164., 4509110., 4517056., 4506270., 4514412.,
      4522554., 4530696., 4538838., 4546980., 4555122., 4563264., 4571406.,
      4579548., 4587690., 4595832., 4603974., 4612116., 4620258., 4628400.,
      4614674., 4623012., 4631350., 4639688., 4648026., 4656364., 4664702.,
      4673040., 4681378., 4689716., 4698054., 4706392., 4714730., 4723068.,
      4731406., 4739744., 4723078., 4731612., 4740146., 4748680., 4757214.,
      4765748., 4774282., 4782816., 4791350., 4799884., 4808418., 4816952.,
      4825486., 4834020., 4842554., 4851088., 4831482., 4840212., 4848942.,
      4857672., 4866402., 4875132., 4883862., 4892592., 4901322., 4910052.,
      4918782., 4927512., 4936242., 4944972., 4953702., 4962432., 4939886.,
      4948812., 4957738., 4966664., 4975590., 4984516., 4993442., 5002368.,
      5011294., 5020220., 5029146., 5038072., 5046998., 5055924., 5064850.,
      5073776., 5048290., 5057412., 5066534., 5075656., 5084778., 5093900.,
      5103022., 5112144., 5121266., 5130388., 5139510., 5148632., 5157754.,
      5166876., 5175998., 5185120., 5156694., 5166012., 5175330., 5184648.,
      5193966., 5203284., 5212602., 5221920., 5231238., 5240556., 5249874.,
      5259192., 5268510., 5277828., 5287146., 5296464.};
  const int batches = 3;
  const int m = 16;
  const int k = 14;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK15xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      15801.,   15922.,   16043.,   16164.,   16285.,   16406.,   16527.,
      16648.,   16769.,   16890.,   17011.,   17132.,   17253.,   17374.,
      38090.,   38436.,   38782.,   39128.,   39474.,   39820.,   40166.,
      40512.,   40858.,   41204.,   41550.,   41896.,   42242.,   42588.,
      60379.,   60950.,   61521.,   62092.,   62663.,   63234.,   63805.,
      64376.,   64947.,   65518.,   66089.,   66660.,   67231.,   67802.,
      82668.,   83464.,   84260.,   85056.,   85852.,   86648.,   87444.,
      88240.,   89036.,   89832.,   90628.,   91424.,   92220.,   93016.,
      104957.,  105978.,  106999.,  108020.,  109041.,  110062.,  111083.,
      112104.,  113125.,  114146.,  115167.,  116188.,  117209.,  118230.,
      127246.,  128492.,  129738.,  130984.,  132230.,  133476.,  134722.,
      135968.,  137214.,  138460.,  139706.,  140952.,  142198.,  143444.,
      149535.,  151006.,  152477.,  153948.,  155419.,  156890.,  158361.,
      159832.,  161303.,  162774.,  164245.,  165716.,  167187.,  168658.,
      171824.,  173520.,  175216.,  176912.,  178608.,  180304.,  182000.,
      183696.,  185392.,  187088.,  188784.,  190480.,  192176.,  193872.,
      194113.,  196034.,  197955.,  199876.,  201797.,  203718.,  205639.,
      207560.,  209481.,  211402.,  213323.,  215244.,  217165.,  219086.,
      216402.,  218548.,  220694.,  222840.,  224986.,  227132.,  229278.,
      231424.,  233570.,  235716.,  237862.,  240008.,  242154.,  244300.,
      238691.,  241062.,  243433.,  245804.,  248175.,  250546.,  252917.,
      255288.,  257659.,  260030.,  262401.,  264772.,  267143.,  269514.,
      260980.,  263576.,  266172.,  268768.,  271364.,  273960.,  276556.,
      279152.,  281748.,  284344.,  286940.,  289536.,  292132.,  294728.,
      283269.,  286090.,  288911.,  291732.,  294553.,  297374.,  300195.,
      303016.,  305837.,  308658.,  311479.,  314300.,  317121.,  319942.,
      305558.,  308604.,  311650.,  314696.,  317742.,  320788.,  323834.,
      326880.,  329926.,  332972.,  336018.,  339064.,  342110.,  345156.,
      327847.,  331118.,  334389.,  337660.,  340931.,  344202.,  347473.,
      350744.,  354015.,  357286.,  360557.,  363828.,  367099.,  370370.,
      350136.,  353632.,  357128.,  360624.,  364120.,  367616.,  371112.,
      374608.,  378104.,  381600.,  385096.,  388592.,  392088.,  395584.,
      1153625., 1157346., 1161067., 1164788., 1168509., 1172230., 1175951.,
      1179672., 1183393., 1187114., 1190835., 1194556., 1198277., 1201998.,
      1223164., 1227110., 1231056., 1235002., 1238948., 1242894., 1246840.,
      1250786., 1254732., 1258678., 1262624., 1266570., 1270516., 1274462.,
      1292703., 1296874., 1301045., 1305216., 1309387., 1313558., 1317729.,
      1321900., 1326071., 1330242., 1334413., 1338584., 1342755., 1346926.,
      1362242., 1366638., 1371034., 1375430., 1379826., 1384222., 1388618.,
      1393014., 1397410., 1401806., 1406202., 1410598., 1414994., 1419390.,
      1431781., 1436402., 1441023., 1445644., 1450265., 1454886., 1459507.,
      1464128., 1468749., 1473370., 1477991., 1482612., 1487233., 1491854.,
      1501320., 1506166., 1511012., 1515858., 1520704., 1525550., 1530396.,
      1535242., 1540088., 1544934., 1549780., 1554626., 1559472., 1564318.,
      1570859., 1575930., 1581001., 1586072., 1591143., 1596214., 1601285.,
      1606356., 1611427., 1616498., 1621569., 1626640., 1631711., 1636782.,
      1640398., 1645694., 1650990., 1656286., 1661582., 1666878., 1672174.,
      1677470., 1682766., 1688062., 1693358., 1698654., 1703950., 1709246.,
      1709937., 1715458., 1720979., 1726500., 1732021., 1737542., 1743063.,
      1748584., 1754105., 1759626., 1765147., 1770668., 1776189., 1781710.,
      1779476., 1785222., 1790968., 1796714., 1802460., 1808206., 1813952.,
      1819698., 1825444., 1831190., 1836936., 1842682., 1848428., 1854174.,
      1849015., 1854986., 1860957., 1866928., 1872899., 1878870., 1884841.,
      1890812., 1896783., 1902754., 1908725., 1914696., 1920667., 1926638.,
      1918554., 1924750., 1930946., 1937142., 1943338., 1949534., 1955730.,
      1961926., 1968122., 1974318., 1980514., 1986710., 1992906., 1999102.,
      1988093., 1994514., 2000935., 2007356., 2013777., 2020198., 2026619.,
      2033040., 2039461., 2045882., 2052303., 2058724., 2065145., 2071566.,
      2057632., 2064278., 2070924., 2077570., 2084216., 2090862., 2097508.,
      2104154., 2110800., 2117446., 2124092., 2130738., 2137384., 2144030.,
      2127171., 2134042., 2140913., 2147784., 2154655., 2161526., 2168397.,
      2175268., 2182139., 2189010., 2195881., 2202752., 2209623., 2216494.,
      2196710., 2203806., 2210902., 2217998., 2225094., 2232190., 2239286.,
      2246382., 2253478., 2260574., 2267670., 2274766., 2281862., 2288958.,
      3803449., 3810770., 3818091., 3825412., 3832733., 3840054., 3847375.,
      3854696., 3862017., 3869338., 3876659., 3883980., 3891301., 3898622.,
      3920238., 3927784., 3935330., 3942876., 3950422., 3957968., 3965514.,
      3973060., 3980606., 3988152., 3995698., 4003244., 4010790., 4018336.,
      4037027., 4044798., 4052569., 4060340., 4068111., 4075882., 4083653.,
      4091424., 4099195., 4106966., 4114737., 4122508., 4130279., 4138050.,
      4153816., 4161812., 4169808., 4177804., 4185800., 4193796., 4201792.,
      4209788., 4217784., 4225780., 4233776., 4241772., 4249768., 4257764.,
      4270605., 4278826., 4287047., 4295268., 4303489., 4311710., 4319931.,
      4328152., 4336373., 4344594., 4352815., 4361036., 4369257., 4377478.,
      4387394., 4395840., 4404286., 4412732., 4421178., 4429624., 4438070.,
      4446516., 4454962., 4463408., 4471854., 4480300., 4488746., 4497192.,
      4504183., 4512854., 4521525., 4530196., 4538867., 4547538., 4556209.,
      4564880., 4573551., 4582222., 4590893., 4599564., 4608235., 4616906.,
      4620972., 4629868., 4638764., 4647660., 4656556., 4665452., 4674348.,
      4683244., 4692140., 4701036., 4709932., 4718828., 4727724., 4736620.,
      4737761., 4746882., 4756003., 4765124., 4774245., 4783366., 4792487.,
      4801608., 4810729., 4819850., 4828971., 4838092., 4847213., 4856334.,
      4854550., 4863896., 4873242., 4882588., 4891934., 4901280., 4910626.,
      4919972., 4929318., 4938664., 4948010., 4957356., 4966702., 4976048.,
      4971339., 4980910., 4990481., 5000052., 5009623., 5019194., 5028765.,
      5038336., 5047907., 5057478., 5067049., 5076620., 5086191., 5095762.,
      5088128., 5097924., 5107720., 5117516., 5127312., 5137108., 5146904.,
      5156700., 5166496., 5176292., 5186088., 5195884., 5205680., 5215476.,
      5204917., 5214938., 5224959., 5234980., 5245001., 5255022., 5265043.,
      5275064., 5285085., 5295106., 5305127., 5315148., 5325169., 5335190.,
      5321706., 5331952., 5342198., 5352444., 5362690., 5372936., 5383182.,
      5393428., 5403674., 5413920., 5424166., 5434412., 5444658., 5454904.,
      5438495., 5448966., 5459437., 5469908., 5480379., 5490850., 5501321.,
      5511792., 5522263., 5532734., 5543205., 5553676., 5564147., 5574618.,
      5555284., 5565980., 5576676., 5587372., 5598068., 5608764., 5619460.,
      5630156., 5640852., 5651548., 5662244., 5672940., 5683636., 5694332.};
  const int batches = 3;
  const int m = 16;
  const int k = 15;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK15xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      16921.,   17042.,   17163.,   17284.,   17405.,   17526.,   17647.,
      17768.,   17889.,   18010.,   18131.,   18252.,   18373.,   18494.,
      18615.,   40786.,   41132.,   41478.,   41824.,   42170.,   42516.,
      42862.,   43208.,   43554.,   43900.,   44246.,   44592.,   44938.,
      45284.,   45630.,   64651.,   65222.,   65793.,   66364.,   66935.,
      67506.,   68077.,   68648.,   69219.,   69790.,   70361.,   70932.,
      71503.,   72074.,   72645.,   88516.,   89312.,   90108.,   90904.,
      91700.,   92496.,   93292.,   94088.,   94884.,   95680.,   96476.,
      97272.,   98068.,   98864.,   99660.,   112381.,  113402.,  114423.,
      115444.,  116465.,  117486.,  118507.,  119528.,  120549.,  121570.,
      122591.,  123612.,  124633.,  125654.,  126675.,  136246.,  137492.,
      138738.,  139984.,  141230.,  142476.,  143722.,  144968.,  146214.,
      147460.,  148706.,  149952.,  151198.,  152444.,  153690.,  160111.,
      161582.,  163053.,  164524.,  165995.,  167466.,  168937.,  170408.,
      171879.,  173350.,  174821.,  176292.,  177763.,  179234.,  180705.,
      183976.,  185672.,  187368.,  189064.,  190760.,  192456.,  194152.,
      195848.,  197544.,  199240.,  200936.,  202632.,  204328.,  206024.,
      207720.,  207841.,  209762.,  211683.,  213604.,  215525.,  217446.,
      219367.,  221288.,  223209.,  225130.,  227051.,  228972.,  230893.,
      232814.,  234735.,  231706.,  233852.,  235998.,  238144.,  240290.,
      242436.,  244582.,  246728.,  248874.,  251020.,  253166.,  255312.,
      257458.,  259604.,  261750.,  255571.,  257942.,  260313.,  262684.,
      265055.,  267426.,  269797.,  272168.,  274539.,  276910.,  279281.,
      281652.,  284023.,  286394.,  288765.,  279436.,  282032.,  284628.,
      287224.,  289820.,  292416.,  295012.,  297608.,  300204.,  302800.,
      305396.,  307992.,  310588.,  313184.,  315780.,  303301.,  306122.,
      308943.,  311764.,  314585.,  317406.,  320227.,  323048.,  325869.,
      328690.,  331511.,  334332.,  337153.,  339974.,  342795.,  327166.,
      330212.,  333258.,  336304.,  339350.,  342396.,  345442.,  348488.,
      351534.,  354580.,  357626.,  360672.,  363718.,  366764.,  369810.,
      351031.,  354302.,  357573.,  360844.,  364115.,  367386.,  370657.,
      373928.,  377199.,  380470.,  383741.,  387012.,  390283.,  393554.,
      396825.,  374896.,  378392.,  381888.,  385384.,  388880.,  392376.,
      395872.,  399368.,  402864.,  406360.,  409856.,  413352.,  416848.,
      420344.,  423840.,  1235761., 1239482., 1243203., 1246924., 1250645.,
      1254366., 1258087., 1261808., 1265529., 1269250., 1272971., 1276692.,
      1280413., 1284134., 1287855., 1310251., 1314197., 1318143., 1322089.,
      1326035., 1329981., 1333927., 1337873., 1341819., 1345765., 1349711.,
      1353657., 1357603., 1361549., 1365495., 1384741., 1388912., 1393083.,
      1397254., 1401425., 1405596., 1409767., 1413938., 1418109., 1422280.,
      1426451., 1430622., 1434793., 1438964., 1443135., 1459231., 1463627.,
      1468023., 1472419., 1476815., 1481211., 1485607., 1490003., 1494399.,
      1498795., 1503191., 1507587., 1511983., 1516379., 1520775., 1533721.,
      1538342., 1542963., 1547584., 1552205., 1556826., 1561447., 1566068.,
      1570689., 1575310., 1579931., 1584552., 1589173., 1593794., 1598415.,
      1608211., 1613057., 1617903., 1622749., 1627595., 1632441., 1637287.,
      1642133., 1646979., 1651825., 1656671., 1661517., 1666363., 1671209.,
      1676055., 1682701., 1687772., 1692843., 1697914., 1702985., 1708056.,
      1713127., 1718198., 1723269., 1728340., 1733411., 1738482., 1743553.,
      1748624., 1753695., 1757191., 1762487., 1767783., 1773079., 1778375.,
      1783671., 1788967., 1794263., 1799559., 1804855., 1810151., 1815447.,
      1820743., 1826039., 1831335., 1831681., 1837202., 1842723., 1848244.,
      1853765., 1859286., 1864807., 1870328., 1875849., 1881370., 1886891.,
      1892412., 1897933., 1903454., 1908975., 1906171., 1911917., 1917663.,
      1923409., 1929155., 1934901., 1940647., 1946393., 1952139., 1957885.,
      1963631., 1969377., 1975123., 1980869., 1986615., 1980661., 1986632.,
      1992603., 1998574., 2004545., 2010516., 2016487., 2022458., 2028429.,
      2034400., 2040371., 2046342., 2052313., 2058284., 2064255., 2055151.,
      2061347., 2067543., 2073739., 2079935., 2086131., 2092327., 2098523.,
      2104719., 2110915., 2117111., 2123307., 2129503., 2135699., 2141895.,
      2129641., 2136062., 2142483., 2148904., 2155325., 2161746., 2168167.,
      2174588., 2181009., 2187430., 2193851., 2200272., 2206693., 2213114.,
      2219535., 2204131., 2210777., 2217423., 2224069., 2230715., 2237361.,
      2244007., 2250653., 2257299., 2263945., 2270591., 2277237., 2283883.,
      2290529., 2297175., 2278621., 2285492., 2292363., 2299234., 2306105.,
      2312976., 2319847., 2326718., 2333589., 2340460., 2347331., 2354202.,
      2361073., 2367944., 2374815., 2353111., 2360207., 2367303., 2374399.,
      2381495., 2388591., 2395687., 2402783., 2409879., 2416975., 2424071.,
      2431167., 2438263., 2445359., 2452455., 4074601., 4081922., 4089243.,
      4096564., 4103885., 4111206., 4118527., 4125848., 4133169., 4140490.,
      4147811., 4155132., 4162453., 4169774., 4177095., 4199716., 4207262.,
      4214808., 4222354., 4229900., 4237446., 4244992., 4252538., 4260084.,
      4267630., 4275176., 4282722., 4290268., 4297814., 4305360., 4324831.,
      4332602., 4340373., 4348144., 4355915., 4363686., 4371457., 4379228.,
      4386999., 4394770., 4402541., 4410312., 4418083., 4425854., 4433625.,
      4449946., 4457942., 4465938., 4473934., 4481930., 4489926., 4497922.,
      4505918., 4513914., 4521910., 4529906., 4537902., 4545898., 4553894.,
      4561890., 4575061., 4583282., 4591503., 4599724., 4607945., 4616166.,
      4624387., 4632608., 4640829., 4649050., 4657271., 4665492., 4673713.,
      4681934., 4690155., 4700176., 4708622., 4717068., 4725514., 4733960.,
      4742406., 4750852., 4759298., 4767744., 4776190., 4784636., 4793082.,
      4801528., 4809974., 4818420., 4825291., 4833962., 4842633., 4851304.,
      4859975., 4868646., 4877317., 4885988., 4894659., 4903330., 4912001.,
      4920672., 4929343., 4938014., 4946685., 4950406., 4959302., 4968198.,
      4977094., 4985990., 4994886., 5003782., 5012678., 5021574., 5030470.,
      5039366., 5048262., 5057158., 5066054., 5074950., 5075521., 5084642.,
      5093763., 5102884., 5112005., 5121126., 5130247., 5139368., 5148489.,
      5157610., 5166731., 5175852., 5184973., 5194094., 5203215., 5200636.,
      5209982., 5219328., 5228674., 5238020., 5247366., 5256712., 5266058.,
      5275404., 5284750., 5294096., 5303442., 5312788., 5322134., 5331480.,
      5325751., 5335322., 5344893., 5354464., 5364035., 5373606., 5383177.,
      5392748., 5402319., 5411890., 5421461., 5431032., 5440603., 5450174.,
      5459745., 5450866., 5460662., 5470458., 5480254., 5490050., 5499846.,
      5509642., 5519438., 5529234., 5539030., 5548826., 5558622., 5568418.,
      5578214., 5588010., 5575981., 5586002., 5596023., 5606044., 5616065.,
      5626086., 5636107., 5646128., 5656149., 5666170., 5676191., 5686212.,
      5696233., 5706254., 5716275., 5701096., 5711342., 5721588., 5731834.,
      5742080., 5752326., 5762572., 5772818., 5783064., 5793310., 5803556.,
      5813802., 5824048., 5834294., 5844540., 5826211., 5836682., 5847153.,
      5857624., 5868095., 5878566., 5889037., 5899508., 5909979., 5920450.,
      5930921., 5941392., 5951863., 5962334., 5972805., 5951326., 5962022.,
      5972718., 5983414., 5994110., 6004806., 6015502., 6026198., 6036894.,
      6047590., 6058286., 6068982., 6079678., 6090374., 6101070.};
  const int batches = 3;
  const int m = 16;
  const int k = 15;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK15xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      18041.,   18162.,   18283.,   18404.,   18525.,   18646.,   18767.,
      18888.,   19009.,   19130.,   19251.,   19372.,   19493.,   19614.,
      19735.,   19856.,   43482.,   43828.,   44174.,   44520.,   44866.,
      45212.,   45558.,   45904.,   46250.,   46596.,   46942.,   47288.,
      47634.,   47980.,   48326.,   48672.,   68923.,   69494.,   70065.,
      70636.,   71207.,   71778.,   72349.,   72920.,   73491.,   74062.,
      74633.,   75204.,   75775.,   76346.,   76917.,   77488.,   94364.,
      95160.,   95956.,   96752.,   97548.,   98344.,   99140.,   99936.,
      100732.,  101528.,  102324.,  103120.,  103916.,  104712.,  105508.,
      106304.,  119805.,  120826.,  121847.,  122868.,  123889.,  124910.,
      125931.,  126952.,  127973.,  128994.,  130015.,  131036.,  132057.,
      133078.,  134099.,  135120.,  145246.,  146492.,  147738.,  148984.,
      150230.,  151476.,  152722.,  153968.,  155214.,  156460.,  157706.,
      158952.,  160198.,  161444.,  162690.,  163936.,  170687.,  172158.,
      173629.,  175100.,  176571.,  178042.,  179513.,  180984.,  182455.,
      183926.,  185397.,  186868.,  188339.,  189810.,  191281.,  192752.,
      196128.,  197824.,  199520.,  201216.,  202912.,  204608.,  206304.,
      208000.,  209696.,  211392.,  213088.,  214784.,  216480.,  218176.,
      219872.,  221568.,  221569.,  223490.,  225411.,  227332.,  229253.,
      231174.,  233095.,  235016.,  236937.,  238858.,  240779.,  242700.,
      244621.,  246542.,  248463.,  250384.,  247010.,  249156.,  251302.,
      253448.,  255594.,  257740.,  259886.,  262032.,  264178.,  266324.,
      268470.,  270616.,  272762.,  274908.,  277054.,  279200.,  272451.,
      274822.,  277193.,  279564.,  281935.,  284306.,  286677.,  289048.,
      291419.,  293790.,  296161.,  298532.,  300903.,  303274.,  305645.,
      308016.,  297892.,  300488.,  303084.,  305680.,  308276.,  310872.,
      313468.,  316064.,  318660.,  321256.,  323852.,  326448.,  329044.,
      331640.,  334236.,  336832.,  323333.,  326154.,  328975.,  331796.,
      334617.,  337438.,  340259.,  343080.,  345901.,  348722.,  351543.,
      354364.,  357185.,  360006.,  362827.,  365648.,  348774.,  351820.,
      354866.,  357912.,  360958.,  364004.,  367050.,  370096.,  373142.,
      376188.,  379234.,  382280.,  385326.,  388372.,  391418.,  394464.,
      374215.,  377486.,  380757.,  384028.,  387299.,  390570.,  393841.,
      397112.,  400383.,  403654.,  406925.,  410196.,  413467.,  416738.,
      420009.,  423280.,  399656.,  403152.,  406648.,  410144.,  413640.,
      417136.,  420632.,  424128.,  427624.,  431120.,  434616.,  438112.,
      441608.,  445104.,  448600.,  452096.,  1317897., 1321618., 1325339.,
      1329060., 1332781., 1336502., 1340223., 1343944., 1347665., 1351386.,
      1355107., 1358828., 1362549., 1366270., 1369991., 1373712., 1397338.,
      1401284., 1405230., 1409176., 1413122., 1417068., 1421014., 1424960.,
      1428906., 1432852., 1436798., 1440744., 1444690., 1448636., 1452582.,
      1456528., 1476779., 1480950., 1485121., 1489292., 1493463., 1497634.,
      1501805., 1505976., 1510147., 1514318., 1518489., 1522660., 1526831.,
      1531002., 1535173., 1539344., 1556220., 1560616., 1565012., 1569408.,
      1573804., 1578200., 1582596., 1586992., 1591388., 1595784., 1600180.,
      1604576., 1608972., 1613368., 1617764., 1622160., 1635661., 1640282.,
      1644903., 1649524., 1654145., 1658766., 1663387., 1668008., 1672629.,
      1677250., 1681871., 1686492., 1691113., 1695734., 1700355., 1704976.,
      1715102., 1719948., 1724794., 1729640., 1734486., 1739332., 1744178.,
      1749024., 1753870., 1758716., 1763562., 1768408., 1773254., 1778100.,
      1782946., 1787792., 1794543., 1799614., 1804685., 1809756., 1814827.,
      1819898., 1824969., 1830040., 1835111., 1840182., 1845253., 1850324.,
      1855395., 1860466., 1865537., 1870608., 1873984., 1879280., 1884576.,
      1889872., 1895168., 1900464., 1905760., 1911056., 1916352., 1921648.,
      1926944., 1932240., 1937536., 1942832., 1948128., 1953424., 1953425.,
      1958946., 1964467., 1969988., 1975509., 1981030., 1986551., 1992072.,
      1997593., 2003114., 2008635., 2014156., 2019677., 2025198., 2030719.,
      2036240., 2032866., 2038612., 2044358., 2050104., 2055850., 2061596.,
      2067342., 2073088., 2078834., 2084580., 2090326., 2096072., 2101818.,
      2107564., 2113310., 2119056., 2112307., 2118278., 2124249., 2130220.,
      2136191., 2142162., 2148133., 2154104., 2160075., 2166046., 2172017.,
      2177988., 2183959., 2189930., 2195901., 2201872., 2191748., 2197944.,
      2204140., 2210336., 2216532., 2222728., 2228924., 2235120., 2241316.,
      2247512., 2253708., 2259904., 2266100., 2272296., 2278492., 2284688.,
      2271189., 2277610., 2284031., 2290452., 2296873., 2303294., 2309715.,
      2316136., 2322557., 2328978., 2335399., 2341820., 2348241., 2354662.,
      2361083., 2367504., 2350630., 2357276., 2363922., 2370568., 2377214.,
      2383860., 2390506., 2397152., 2403798., 2410444., 2417090., 2423736.,
      2430382., 2437028., 2443674., 2450320., 2430071., 2436942., 2443813.,
      2450684., 2457555., 2464426., 2471297., 2478168., 2485039., 2491910.,
      2498781., 2505652., 2512523., 2519394., 2526265., 2533136., 2509512.,
      2516608., 2523704., 2530800., 2537896., 2544992., 2552088., 2559184.,
      2566280., 2573376., 2580472., 2587568., 2594664., 2601760., 2608856.,
      2615952., 4345753., 4353074., 4360395., 4367716., 4375037., 4382358.,
      4389679., 4397000., 4404321., 4411642., 4418963., 4426284., 4433605.,
      4440926., 4448247., 4455568., 4479194., 4486740., 4494286., 4501832.,
      4509378., 4516924., 4524470., 4532016., 4539562., 4547108., 4554654.,
      4562200., 4569746., 4577292., 4584838., 4592384., 4612635., 4620406.,
      4628177., 4635948., 4643719., 4651490., 4659261., 4667032., 4674803.,
      4682574., 4690345., 4698116., 4705887., 4713658., 4721429., 4729200.,
      4746076., 4754072., 4762068., 4770064., 4778060., 4786056., 4794052.,
      4802048., 4810044., 4818040., 4826036., 4834032., 4842028., 4850024.,
      4858020., 4866016., 4879517., 4887738., 4895959., 4904180., 4912401.,
      4920622., 4928843., 4937064., 4945285., 4953506., 4961727., 4969948.,
      4978169., 4986390., 4994611., 5002832., 5012958., 5021404., 5029850.,
      5038296., 5046742., 5055188., 5063634., 5072080., 5080526., 5088972.,
      5097418., 5105864., 5114310., 5122756., 5131202., 5139648., 5146399.,
      5155070., 5163741., 5172412., 5181083., 5189754., 5198425., 5207096.,
      5215767., 5224438., 5233109., 5241780., 5250451., 5259122., 5267793.,
      5276464., 5279840., 5288736., 5297632., 5306528., 5315424., 5324320.,
      5333216., 5342112., 5351008., 5359904., 5368800., 5377696., 5386592.,
      5395488., 5404384., 5413280., 5413281., 5422402., 5431523., 5440644.,
      5449765., 5458886., 5468007., 5477128., 5486249., 5495370., 5504491.,
      5513612., 5522733., 5531854., 5540975., 5550096., 5546722., 5556068.,
      5565414., 5574760., 5584106., 5593452., 5602798., 5612144., 5621490.,
      5630836., 5640182., 5649528., 5658874., 5668220., 5677566., 5686912.,
      5680163., 5689734., 5699305., 5708876., 5718447., 5728018., 5737589.,
      5747160., 5756731., 5766302., 5775873., 5785444., 5795015., 5804586.,
      5814157., 5823728., 5813604., 5823400., 5833196., 5842992., 5852788.,
      5862584., 5872380., 5882176., 5891972., 5901768., 5911564., 5921360.,
      5931156., 5940952., 5950748., 5960544., 5947045., 5957066., 5967087.,
      5977108., 5987129., 5997150., 6007171., 6017192., 6027213., 6037234.,
      6047255., 6057276., 6067297., 6077318., 6087339., 6097360., 6080486.,
      6090732., 6100978., 6111224., 6121470., 6131716., 6141962., 6152208.,
      6162454., 6172700., 6182946., 6193192., 6203438., 6213684., 6223930.,
      6234176., 6213927., 6224398., 6234869., 6245340., 6255811., 6266282.,
      6276753., 6287224., 6297695., 6308166., 6318637., 6329108., 6339579.,
      6350050., 6360521., 6370992., 6347368., 6358064., 6368760., 6379456.,
      6390152., 6400848., 6411544., 6422240., 6432936., 6443632., 6454328.,
      6465024., 6475720., 6486416., 6497112., 6507808.};
  const int batches = 3;
  const int m = 16;
  const int k = 15;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK16xN14) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      19177.,   19314.,   19451.,   19588.,   19725.,   19862.,   19999.,
      20136.,   20273.,   20410.,   20547.,   20684.,   20821.,   20958.,
      46327.,   46720.,   47113.,   47506.,   47899.,   48292.,   48685.,
      49078.,   49471.,   49864.,   50257.,   50650.,   51043.,   51436.,
      73477.,   74126.,   74775.,   75424.,   76073.,   76722.,   77371.,
      78020.,   78669.,   79318.,   79967.,   80616.,   81265.,   81914.,
      100627.,  101532.,  102437.,  103342.,  104247.,  105152.,  106057.,
      106962.,  107867.,  108772.,  109677.,  110582.,  111487.,  112392.,
      127777.,  128938.,  130099.,  131260.,  132421.,  133582.,  134743.,
      135904.,  137065.,  138226.,  139387.,  140548.,  141709.,  142870.,
      154927.,  156344.,  157761.,  159178.,  160595.,  162012.,  163429.,
      164846.,  166263.,  167680.,  169097.,  170514.,  171931.,  173348.,
      182077.,  183750.,  185423.,  187096.,  188769.,  190442.,  192115.,
      193788.,  195461.,  197134.,  198807.,  200480.,  202153.,  203826.,
      209227.,  211156.,  213085.,  215014.,  216943.,  218872.,  220801.,
      222730.,  224659.,  226588.,  228517.,  230446.,  232375.,  234304.,
      236377.,  238562.,  240747.,  242932.,  245117.,  247302.,  249487.,
      251672.,  253857.,  256042.,  258227.,  260412.,  262597.,  264782.,
      263527.,  265968.,  268409.,  270850.,  273291.,  275732.,  278173.,
      280614.,  283055.,  285496.,  287937.,  290378.,  292819.,  295260.,
      290677.,  293374.,  296071.,  298768.,  301465.,  304162.,  306859.,
      309556.,  312253.,  314950.,  317647.,  320344.,  323041.,  325738.,
      317827.,  320780.,  323733.,  326686.,  329639.,  332592.,  335545.,
      338498.,  341451.,  344404.,  347357.,  350310.,  353263.,  356216.,
      344977.,  348186.,  351395.,  354604.,  357813.,  361022.,  364231.,
      367440.,  370649.,  373858.,  377067.,  380276.,  383485.,  386694.,
      372127.,  375592.,  379057.,  382522.,  385987.,  389452.,  392917.,
      396382.,  399847.,  403312.,  406777.,  410242.,  413707.,  417172.,
      399277.,  402998.,  406719.,  410440.,  414161.,  417882.,  421603.,
      425324.,  429045.,  432766.,  436487.,  440208.,  443929.,  447650.,
      426427.,  430404.,  434381.,  438358.,  442335.,  446312.,  450289.,
      454266.,  458243.,  462220.,  466197.,  470174.,  474151.,  478128.,
      1401545., 1405778., 1410011., 1414244., 1418477., 1422710., 1426943.,
      1431176., 1435409., 1439642., 1443875., 1448108., 1452341., 1456574.,
      1486039., 1490528., 1495017., 1499506., 1503995., 1508484., 1512973.,
      1517462., 1521951., 1526440., 1530929., 1535418., 1539907., 1544396.,
      1570533., 1575278., 1580023., 1584768., 1589513., 1594258., 1599003.,
      1603748., 1608493., 1613238., 1617983., 1622728., 1627473., 1632218.,
      1655027., 1660028., 1665029., 1670030., 1675031., 1680032., 1685033.,
      1690034., 1695035., 1700036., 1705037., 1710038., 1715039., 1720040.,
      1739521., 1744778., 1750035., 1755292., 1760549., 1765806., 1771063.,
      1776320., 1781577., 1786834., 1792091., 1797348., 1802605., 1807862.,
      1824015., 1829528., 1835041., 1840554., 1846067., 1851580., 1857093.,
      1862606., 1868119., 1873632., 1879145., 1884658., 1890171., 1895684.,
      1908509., 1914278., 1920047., 1925816., 1931585., 1937354., 1943123.,
      1948892., 1954661., 1960430., 1966199., 1971968., 1977737., 1983506.,
      1993003., 1999028., 2005053., 2011078., 2017103., 2023128., 2029153.,
      2035178., 2041203., 2047228., 2053253., 2059278., 2065303., 2071328.,
      2077497., 2083778., 2090059., 2096340., 2102621., 2108902., 2115183.,
      2121464., 2127745., 2134026., 2140307., 2146588., 2152869., 2159150.,
      2161991., 2168528., 2175065., 2181602., 2188139., 2194676., 2201213.,
      2207750., 2214287., 2220824., 2227361., 2233898., 2240435., 2246972.,
      2246485., 2253278., 2260071., 2266864., 2273657., 2280450., 2287243.,
      2294036., 2300829., 2307622., 2314415., 2321208., 2328001., 2334794.,
      2330979., 2338028., 2345077., 2352126., 2359175., 2366224., 2373273.,
      2380322., 2387371., 2394420., 2401469., 2408518., 2415567., 2422616.,
      2415473., 2422778., 2430083., 2437388., 2444693., 2451998., 2459303.,
      2466608., 2473913., 2481218., 2488523., 2495828., 2503133., 2510438.,
      2499967., 2507528., 2515089., 2522650., 2530211., 2537772., 2545333.,
      2552894., 2560455., 2568016., 2575577., 2583138., 2590699., 2598260.,
      2584461., 2592278., 2600095., 2607912., 2615729., 2623546., 2631363.,
      2639180., 2646997., 2654814., 2662631., 2670448., 2678265., 2686082.,
      2668955., 2677028., 2685101., 2693174., 2701247., 2709320., 2717393.,
      2725466., 2733539., 2741612., 2749685., 2757758., 2765831., 2773904.,
      4618921., 4627250., 4635579., 4643908., 4652237., 4660566., 4668895.,
      4677224., 4685553., 4693882., 4702211., 4710540., 4718869., 4727198.,
      4760759., 4769344., 4777929., 4786514., 4795099., 4803684., 4812269.,
      4820854., 4829439., 4838024., 4846609., 4855194., 4863779., 4872364.,
      4902597., 4911438., 4920279., 4929120., 4937961., 4946802., 4955643.,
      4964484., 4973325., 4982166., 4991007., 4999848., 5008689., 5017530.,
      5044435., 5053532., 5062629., 5071726., 5080823., 5089920., 5099017.,
      5108114., 5117211., 5126308., 5135405., 5144502., 5153599., 5162696.,
      5186273., 5195626., 5204979., 5214332., 5223685., 5233038., 5242391.,
      5251744., 5261097., 5270450., 5279803., 5289156., 5298509., 5307862.,
      5328111., 5337720., 5347329., 5356938., 5366547., 5376156., 5385765.,
      5395374., 5404983., 5414592., 5424201., 5433810., 5443419., 5453028.,
      5469949., 5479814., 5489679., 5499544., 5509409., 5519274., 5529139.,
      5539004., 5548869., 5558734., 5568599., 5578464., 5588329., 5598194.,
      5611787., 5621908., 5632029., 5642150., 5652271., 5662392., 5672513.,
      5682634., 5692755., 5702876., 5712997., 5723118., 5733239., 5743360.,
      5753625., 5764002., 5774379., 5784756., 5795133., 5805510., 5815887.,
      5826264., 5836641., 5847018., 5857395., 5867772., 5878149., 5888526.,
      5895463., 5906096., 5916729., 5927362., 5937995., 5948628., 5959261.,
      5969894., 5980527., 5991160., 6001793., 6012426., 6023059., 6033692.,
      6037301., 6048190., 6059079., 6069968., 6080857., 6091746., 6102635.,
      6113524., 6124413., 6135302., 6146191., 6157080., 6167969., 6178858.,
      6179139., 6190284., 6201429., 6212574., 6223719., 6234864., 6246009.,
      6257154., 6268299., 6279444., 6290589., 6301734., 6312879., 6324024.,
      6320977., 6332378., 6343779., 6355180., 6366581., 6377982., 6389383.,
      6400784., 6412185., 6423586., 6434987., 6446388., 6457789., 6469190.,
      6462815., 6474472., 6486129., 6497786., 6509443., 6521100., 6532757.,
      6544414., 6556071., 6567728., 6579385., 6591042., 6602699., 6614356.,
      6604653., 6616566., 6628479., 6640392., 6652305., 6664218., 6676131.,
      6688044., 6699957., 6711870., 6723783., 6735696., 6747609., 6759522.,
      6746491., 6758660., 6770829., 6782998., 6795167., 6807336., 6819505.,
      6831674., 6843843., 6856012., 6868181., 6880350., 6892519., 6904688.};
  const int batches = 3;
  const int m = 16;
  const int k = 16;
  const int n = 14;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK16xN15) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      20537.,   20674.,   20811.,   20948.,   21085.,   21222.,   21359.,
      21496.,   21633.,   21770.,   21907.,   22044.,   22181.,   22318.,
      22455.,   49608.,   50001.,   50394.,   50787.,   51180.,   51573.,
      51966.,   52359.,   52752.,   53145.,   53538.,   53931.,   54324.,
      54717.,   55110.,   78679.,   79328.,   79977.,   80626.,   81275.,
      81924.,   82573.,   83222.,   83871.,   84520.,   85169.,   85818.,
      86467.,   87116.,   87765.,   107750.,  108655.,  109560.,  110465.,
      111370.,  112275.,  113180.,  114085.,  114990.,  115895.,  116800.,
      117705.,  118610.,  119515.,  120420.,  136821.,  137982.,  139143.,
      140304.,  141465.,  142626.,  143787.,  144948.,  146109.,  147270.,
      148431.,  149592.,  150753.,  151914.,  153075.,  165892.,  167309.,
      168726.,  170143.,  171560.,  172977.,  174394.,  175811.,  177228.,
      178645.,  180062.,  181479.,  182896.,  184313.,  185730.,  194963.,
      196636.,  198309.,  199982.,  201655.,  203328.,  205001.,  206674.,
      208347.,  210020.,  211693.,  213366.,  215039.,  216712.,  218385.,
      224034.,  225963.,  227892.,  229821.,  231750.,  233679.,  235608.,
      237537.,  239466.,  241395.,  243324.,  245253.,  247182.,  249111.,
      251040.,  253105.,  255290.,  257475.,  259660.,  261845.,  264030.,
      266215.,  268400.,  270585.,  272770.,  274955.,  277140.,  279325.,
      281510.,  283695.,  282176.,  284617.,  287058.,  289499.,  291940.,
      294381.,  296822.,  299263.,  301704.,  304145.,  306586.,  309027.,
      311468.,  313909.,  316350.,  311247.,  313944.,  316641.,  319338.,
      322035.,  324732.,  327429.,  330126.,  332823.,  335520.,  338217.,
      340914.,  343611.,  346308.,  349005.,  340318.,  343271.,  346224.,
      349177.,  352130.,  355083.,  358036.,  360989.,  363942.,  366895.,
      369848.,  372801.,  375754.,  378707.,  381660.,  369389.,  372598.,
      375807.,  379016.,  382225.,  385434.,  388643.,  391852.,  395061.,
      398270.,  401479.,  404688.,  407897.,  411106.,  414315.,  398460.,
      401925.,  405390.,  408855.,  412320.,  415785.,  419250.,  422715.,
      426180.,  429645.,  433110.,  436575.,  440040.,  443505.,  446970.,
      427531.,  431252.,  434973.,  438694.,  442415.,  446136.,  449857.,
      453578.,  457299.,  461020.,  464741.,  468462.,  472183.,  475904.,
      479625.,  456602.,  460579.,  464556.,  468533.,  472510.,  476487.,
      480464.,  484441.,  488418.,  492395.,  496372.,  500349.,  504326.,
      508303.,  512280.,  1501353., 1505586., 1509819., 1514052., 1518285.,
      1522518., 1526751., 1530984., 1535217., 1539450., 1543683., 1547916.,
      1552149., 1556382., 1560615., 1591864., 1596353., 1600842., 1605331.,
      1609820., 1614309., 1618798., 1623287., 1627776., 1632265., 1636754.,
      1641243., 1645732., 1650221., 1654710., 1682375., 1687120., 1691865.,
      1696610., 1701355., 1706100., 1710845., 1715590., 1720335., 1725080.,
      1729825., 1734570., 1739315., 1744060., 1748805., 1772886., 1777887.,
      1782888., 1787889., 1792890., 1797891., 1802892., 1807893., 1812894.,
      1817895., 1822896., 1827897., 1832898., 1837899., 1842900., 1863397.,
      1868654., 1873911., 1879168., 1884425., 1889682., 1894939., 1900196.,
      1905453., 1910710., 1915967., 1921224., 1926481., 1931738., 1936995.,
      1953908., 1959421., 1964934., 1970447., 1975960., 1981473., 1986986.,
      1992499., 1998012., 2003525., 2009038., 2014551., 2020064., 2025577.,
      2031090., 2044419., 2050188., 2055957., 2061726., 2067495., 2073264.,
      2079033., 2084802., 2090571., 2096340., 2102109., 2107878., 2113647.,
      2119416., 2125185., 2134930., 2140955., 2146980., 2153005., 2159030.,
      2165055., 2171080., 2177105., 2183130., 2189155., 2195180., 2201205.,
      2207230., 2213255., 2219280., 2225441., 2231722., 2238003., 2244284.,
      2250565., 2256846., 2263127., 2269408., 2275689., 2281970., 2288251.,
      2294532., 2300813., 2307094., 2313375., 2315952., 2322489., 2329026.,
      2335563., 2342100., 2348637., 2355174., 2361711., 2368248., 2374785.,
      2381322., 2387859., 2394396., 2400933., 2407470., 2406463., 2413256.,
      2420049., 2426842., 2433635., 2440428., 2447221., 2454014., 2460807.,
      2467600., 2474393., 2481186., 2487979., 2494772., 2501565., 2496974.,
      2504023., 2511072., 2518121., 2525170., 2532219., 2539268., 2546317.,
      2553366., 2560415., 2567464., 2574513., 2581562., 2588611., 2595660.,
      2587485., 2594790., 2602095., 2609400., 2616705., 2624010., 2631315.,
      2638620., 2645925., 2653230., 2660535., 2667840., 2675145., 2682450.,
      2689755., 2677996., 2685557., 2693118., 2700679., 2708240., 2715801.,
      2723362., 2730923., 2738484., 2746045., 2753606., 2761167., 2768728.,
      2776289., 2783850., 2768507., 2776324., 2784141., 2791958., 2799775.,
      2807592., 2815409., 2823226., 2831043., 2838860., 2846677., 2854494.,
      2862311., 2870128., 2877945., 2859018., 2867091., 2875164., 2883237.,
      2891310., 2899383., 2907456., 2915529., 2923602., 2931675., 2939748.,
      2947821., 2955894., 2963967., 2972040., 4948249., 4956578., 4964907.,
      4973236., 4981565., 4989894., 4998223., 5006552., 5014881., 5023210.,
      5031539., 5039868., 5048197., 5056526., 5064855., 5100200., 5108785.,
      5117370., 5125955., 5134540., 5143125., 5151710., 5160295., 5168880.,
      5177465., 5186050., 5194635., 5203220., 5211805., 5220390., 5252151.,
      5260992., 5269833., 5278674., 5287515., 5296356., 5305197., 5314038.,
      5322879., 5331720., 5340561., 5349402., 5358243., 5367084., 5375925.,
      5404102., 5413199., 5422296., 5431393., 5440490., 5449587., 5458684.,
      5467781., 5476878., 5485975., 5495072., 5504169., 5513266., 5522363.,
      5531460., 5556053., 5565406., 5574759., 5584112., 5593465., 5602818.,
      5612171., 5621524., 5630877., 5640230., 5649583., 5658936., 5668289.,
      5677642., 5686995., 5708004., 5717613., 5727222., 5736831., 5746440.,
      5756049., 5765658., 5775267., 5784876., 5794485., 5804094., 5813703.,
      5823312., 5832921., 5842530., 5859955., 5869820., 5879685., 5889550.,
      5899415., 5909280., 5919145., 5929010., 5938875., 5948740., 5958605.,
      5968470., 5978335., 5988200., 5998065., 6011906., 6022027., 6032148.,
      6042269., 6052390., 6062511., 6072632., 6082753., 6092874., 6102995.,
      6113116., 6123237., 6133358., 6143479., 6153600., 6163857., 6174234.,
      6184611., 6194988., 6205365., 6215742., 6226119., 6236496., 6246873.,
      6257250., 6267627., 6278004., 6288381., 6298758., 6309135., 6315808.,
      6326441., 6337074., 6347707., 6358340., 6368973., 6379606., 6390239.,
      6400872., 6411505., 6422138., 6432771., 6443404., 6454037., 6464670.,
      6467759., 6478648., 6489537., 6500426., 6511315., 6522204., 6533093.,
      6543982., 6554871., 6565760., 6576649., 6587538., 6598427., 6609316.,
      6620205., 6619710., 6630855., 6642000., 6653145., 6664290., 6675435.,
      6686580., 6697725., 6708870., 6720015., 6731160., 6742305., 6753450.,
      6764595., 6775740., 6771661., 6783062., 6794463., 6805864., 6817265.,
      6828666., 6840067., 6851468., 6862869., 6874270., 6885671., 6897072.,
      6908473., 6919874., 6931275., 6923612., 6935269., 6946926., 6958583.,
      6970240., 6981897., 6993554., 7005211., 7016868., 7028525., 7040182.,
      7051839., 7063496., 7075153., 7086810., 7075563., 7087476., 7099389.,
      7111302., 7123215., 7135128., 7147041., 7158954., 7170867., 7182780.,
      7194693., 7206606., 7218519., 7230432., 7242345., 7227514., 7239683.,
      7251852., 7264021., 7276190., 7288359., 7300528., 7312697., 7324866.,
      7337035., 7349204., 7361373., 7373542., 7385711., 7397880.};
  const int batches = 3;
  const int m = 16;
  const int k = 16;
  const int n = 15;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}
TYPED_TEST(MatmulBatch3Beta1FalseFalse, M16xK16xN16) {
  using DataType = typename TestFixture::DataType;
  const std::vector<DataType> exp_out = {
      21897.,   22034.,   22171.,   22308.,   22445.,   22582.,   22719.,
      22856.,   22993.,   23130.,   23267.,   23404.,   23541.,   23678.,
      23815.,   23952.,   52889.,   53282.,   53675.,   54068.,   54461.,
      54854.,   55247.,   55640.,   56033.,   56426.,   56819.,   57212.,
      57605.,   57998.,   58391.,   58784.,   83881.,   84530.,   85179.,
      85828.,   86477.,   87126.,   87775.,   88424.,   89073.,   89722.,
      90371.,   91020.,   91669.,   92318.,   92967.,   93616.,   114873.,
      115778.,  116683.,  117588.,  118493.,  119398.,  120303.,  121208.,
      122113.,  123018.,  123923.,  124828.,  125733.,  126638.,  127543.,
      128448.,  145865.,  147026.,  148187.,  149348.,  150509.,  151670.,
      152831.,  153992.,  155153.,  156314.,  157475.,  158636.,  159797.,
      160958.,  162119.,  163280.,  176857.,  178274.,  179691.,  181108.,
      182525.,  183942.,  185359.,  186776.,  188193.,  189610.,  191027.,
      192444.,  193861.,  195278.,  196695.,  198112.,  207849.,  209522.,
      211195.,  212868.,  214541.,  216214.,  217887.,  219560.,  221233.,
      222906.,  224579.,  226252.,  227925.,  229598.,  231271.,  232944.,
      238841.,  240770.,  242699.,  244628.,  246557.,  248486.,  250415.,
      252344.,  254273.,  256202.,  258131.,  260060.,  261989.,  263918.,
      265847.,  267776.,  269833.,  272018.,  274203.,  276388.,  278573.,
      280758.,  282943.,  285128.,  287313.,  289498.,  291683.,  293868.,
      296053.,  298238.,  300423.,  302608.,  300825.,  303266.,  305707.,
      308148.,  310589.,  313030.,  315471.,  317912.,  320353.,  322794.,
      325235.,  327676.,  330117.,  332558.,  334999.,  337440.,  331817.,
      334514.,  337211.,  339908.,  342605.,  345302.,  347999.,  350696.,
      353393.,  356090.,  358787.,  361484.,  364181.,  366878.,  369575.,
      372272.,  362809.,  365762.,  368715.,  371668.,  374621.,  377574.,
      380527.,  383480.,  386433.,  389386.,  392339.,  395292.,  398245.,
      401198.,  404151.,  407104.,  393801.,  397010.,  400219.,  403428.,
      406637.,  409846.,  413055.,  416264.,  419473.,  422682.,  425891.,
      429100.,  432309.,  435518.,  438727.,  441936.,  424793.,  428258.,
      431723.,  435188.,  438653.,  442118.,  445583.,  449048.,  452513.,
      455978.,  459443.,  462908.,  466373.,  469838.,  473303.,  476768.,
      455785.,  459506.,  463227.,  466948.,  470669.,  474390.,  478111.,
      481832.,  485553.,  489274.,  492995.,  496716.,  500437.,  504158.,
      507879.,  511600.,  486777.,  490754.,  494731.,  498708.,  502685.,
      506662.,  510639.,  514616.,  518593.,  522570.,  526547.,  530524.,
      534501.,  538478.,  542455.,  546432.,  1601161., 1605394., 1609627.,
      1613860., 1618093., 1622326., 1626559., 1630792., 1635025., 1639258.,
      1643491., 1647724., 1651957., 1656190., 1660423., 1664656., 1697689.,
      1702178., 1706667., 1711156., 1715645., 1720134., 1724623., 1729112.,
      1733601., 1738090., 1742579., 1747068., 1751557., 1756046., 1760535.,
      1765024., 1794217., 1798962., 1803707., 1808452., 1813197., 1817942.,
      1822687., 1827432., 1832177., 1836922., 1841667., 1846412., 1851157.,
      1855902., 1860647., 1865392., 1890745., 1895746., 1900747., 1905748.,
      1910749., 1915750., 1920751., 1925752., 1930753., 1935754., 1940755.,
      1945756., 1950757., 1955758., 1960759., 1965760., 1987273., 1992530.,
      1997787., 2003044., 2008301., 2013558., 2018815., 2024072., 2029329.,
      2034586., 2039843., 2045100., 2050357., 2055614., 2060871., 2066128.,
      2083801., 2089314., 2094827., 2100340., 2105853., 2111366., 2116879.,
      2122392., 2127905., 2133418., 2138931., 2144444., 2149957., 2155470.,
      2160983., 2166496., 2180329., 2186098., 2191867., 2197636., 2203405.,
      2209174., 2214943., 2220712., 2226481., 2232250., 2238019., 2243788.,
      2249557., 2255326., 2261095., 2266864., 2276857., 2282882., 2288907.,
      2294932., 2300957., 2306982., 2313007., 2319032., 2325057., 2331082.,
      2337107., 2343132., 2349157., 2355182., 2361207., 2367232., 2373385.,
      2379666., 2385947., 2392228., 2398509., 2404790., 2411071., 2417352.,
      2423633., 2429914., 2436195., 2442476., 2448757., 2455038., 2461319.,
      2467600., 2469913., 2476450., 2482987., 2489524., 2496061., 2502598.,
      2509135., 2515672., 2522209., 2528746., 2535283., 2541820., 2548357.,
      2554894., 2561431., 2567968., 2566441., 2573234., 2580027., 2586820.,
      2593613., 2600406., 2607199., 2613992., 2620785., 2627578., 2634371.,
      2641164., 2647957., 2654750., 2661543., 2668336., 2662969., 2670018.,
      2677067., 2684116., 2691165., 2698214., 2705263., 2712312., 2719361.,
      2726410., 2733459., 2740508., 2747557., 2754606., 2761655., 2768704.,
      2759497., 2766802., 2774107., 2781412., 2788717., 2796022., 2803327.,
      2810632., 2817937., 2825242., 2832547., 2839852., 2847157., 2854462.,
      2861767., 2869072., 2856025., 2863586., 2871147., 2878708., 2886269.,
      2893830., 2901391., 2908952., 2916513., 2924074., 2931635., 2939196.,
      2946757., 2954318., 2961879., 2969440., 2952553., 2960370., 2968187.,
      2976004., 2983821., 2991638., 2999455., 3007272., 3015089., 3022906.,
      3030723., 3038540., 3046357., 3054174., 3061991., 3069808., 3049081.,
      3057154., 3065227., 3073300., 3081373., 3089446., 3097519., 3105592.,
      3113665., 3121738., 3129811., 3137884., 3145957., 3154030., 3162103.,
      3170176., 5277577., 5285906., 5294235., 5302564., 5310893., 5319222.,
      5327551., 5335880., 5344209., 5352538., 5360867., 5369196., 5377525.,
      5385854., 5394183., 5402512., 5439641., 5448226., 5456811., 5465396.,
      5473981., 5482566., 5491151., 5499736., 5508321., 5516906., 5525491.,
      5534076., 5542661., 5551246., 5559831., 5568416., 5601705., 5610546.,
      5619387., 5628228., 5637069., 5645910., 5654751., 5663592., 5672433.,
      5681274., 5690115., 5698956., 5707797., 5716638., 5725479., 5734320.,
      5763769., 5772866., 5781963., 5791060., 5800157., 5809254., 5818351.,
      5827448., 5836545., 5845642., 5854739., 5863836., 5872933., 5882030.,
      5891127., 5900224., 5925833., 5935186., 5944539., 5953892., 5963245.,
      5972598., 5981951., 5991304., 6000657., 6010010., 6019363., 6028716.,
      6038069., 6047422., 6056775., 6066128., 6087897., 6097506., 6107115.,
      6116724., 6126333., 6135942., 6145551., 6155160., 6164769., 6174378.,
      6183987., 6193596., 6203205., 6212814., 6222423., 6232032., 6249961.,
      6259826., 6269691., 6279556., 6289421., 6299286., 6309151., 6319016.,
      6328881., 6338746., 6348611., 6358476., 6368341., 6378206., 6388071.,
      6397936., 6412025., 6422146., 6432267., 6442388., 6452509., 6462630.,
      6472751., 6482872., 6492993., 6503114., 6513235., 6523356., 6533477.,
      6543598., 6553719., 6563840., 6574089., 6584466., 6594843., 6605220.,
      6615597., 6625974., 6636351., 6646728., 6657105., 6667482., 6677859.,
      6688236., 6698613., 6708990., 6719367., 6729744., 6736153., 6746786.,
      6757419., 6768052., 6778685., 6789318., 6799951., 6810584., 6821217.,
      6831850., 6842483., 6853116., 6863749., 6874382., 6885015., 6895648.,
      6898217., 6909106., 6919995., 6930884., 6941773., 6952662., 6963551.,
      6974440., 6985329., 6996218., 7007107., 7017996., 7028885., 7039774.,
      7050663., 7061552., 7060281., 7071426., 7082571., 7093716., 7104861.,
      7116006., 7127151., 7138296., 7149441., 7160586., 7171731., 7182876.,
      7194021., 7205166., 7216311., 7227456., 7222345., 7233746., 7245147.,
      7256548., 7267949., 7279350., 7290751., 7302152., 7313553., 7324954.,
      7336355., 7347756., 7359157., 7370558., 7381959., 7393360., 7384409.,
      7396066., 7407723., 7419380., 7431037., 7442694., 7454351., 7466008.,
      7477665., 7489322., 7500979., 7512636., 7524293., 7535950., 7547607.,
      7559264., 7546473., 7558386., 7570299., 7582212., 7594125., 7606038.,
      7617951., 7629864., 7641777., 7653690., 7665603., 7677516., 7689429.,
      7701342., 7713255., 7725168., 7708537., 7720706., 7732875., 7745044.,
      7757213., 7769382., 7781551., 7793720., 7805889., 7818058., 7830227.,
      7842396., 7854565., 7866734., 7878903., 7891072.};
  const int batches = 3;
  const int m = 16;
  const int k = 16;
  const int n = 16;
  const auto beta = static_cast<DataType>(1);
  const DataType max_input_val = 2048.0;
  this->run(exp_out, batches, m, k, n, beta, 0, 0, 0, max_input_val);
}